tephra-server 0.1.1

Synchronous, thread-per-connection TCP server exposing a tephra event store over the length-prefixed protobuf protocol
docs.rs failed to build tephra-server-0.1.1
Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.

tephra-server

Crates.io Documentation License

A synchronous, thread-per-connection TCP server exposing a tephra event store over the length-prefixed protobuf protocol.

The model mirrors the engine: tephra is single-writer and synchronous (appends block until durable, reads run on the caller's own thread over a lock-free snapshot), so each connection is served on its own thread. Connect to it with tephra-client.

Running

cargo install tephra-server
tephra-server --bind 127.0.0.1:9000 --data-dir ./tephra-data

An official container image is also published; see the repository for the Dockerfile and the GitHub Container Registry image.

Configuration

Configuration is layered, later sources winning: built-in defaults, then a TOML file passed with --config, then TEPHRA__* environment variables, then the command-line flags. The command line carries only the launch essentials:

tephra-server [--config PATH] [--bind ADDR] [--data-dir DIR] [--log FILTER]

Everything else (segment size, group-commit sizing, tips window, planner bias, frame and read-batch limits) is set in the config file or the environment. Any key can be set from the environment as TEPHRA__<SECTION>__<KEY>, for example TEPHRA__WRITER__MAX_BATCH_BYTES=16777216. See tephra.example.toml in this crate for the full surface, where every value shown is the built-in default.

Related crates

License

Licensed under the Apache License, Version 2.0.