Ursula: thread-per-core, multi-Raft Rust runtime for HTTP event streams
Ursula is a self-hosted, distributed server designed for managing replayable event timelines. It utilizes the Durable Streams Protocol to provide low-latency, durable event streaming over HTTP. The architecture supports independent Raft groups and is optimized for high performance and scalability.
- ▪Ursula allows document editors and workflows to manage event streams over the public internet.
- ▪It maintains open-source self-hosting, low write latency, and quorum-replicated durability.
- ▪Ursula can sustain 35.2k appends per second while delivering low-latency streaming to numerous subscribers.
Opening excerpt (first ~120 words) tap to expand
Ursula Docs: ursula.tonbo.io Ursula is a self-hosted, distributed server for the replayable, append-only event timelines behind document edits, agent runs, workflows, and chat. It speaks the Durable Streams Protocol over plain HTTP and SSE. What Ursula keeps Event streams live outside the broker network. Document editors, agents, and durable workflows need timelines that browsers, mobile apps, and serverless functions can read, write, and tail over the public internet. That asks for HTTP-native, distributed, S3-backed infrastructure, not the SDK-locked, single-network shape Kafka-style brokers were built for. The Durable Streams Protocol nails that wire format, but its reference server is a single process: a node loss is data loss.
…
Excerpt limited to ~120 words for fair-use compliance. The full article is at GitHub.