Skip to content

Introducing d-engine: Distributed Coordination Without the Complexity

Distributed coordination is one of those problems that every serious infrastructure project eventually has to face. Whether you need leader election, distributed locks, configuration management, or service discovery — at some point you reach for a tool like etcd or ZooKeeper.

They work. They’re battle-tested. But they also come with a price: operational complexity, resource overhead, and an assumption that you have a dedicated team to keep them healthy.

We built d-engine to challenge that assumption.

d-engine is a distributed coordination engine built in Rust. It implements the Raft consensus protocol to provide strong consistency guarantees across a cluster of nodes.

The goal is simple: make distributed coordination accessible — cheap to run on modest hardware, straightforward to embed in your own systems, and honest about what it does and doesn’t do.

Fair question. etcd is excellent. TiKV’s Raft implementation is impressive. openraft is well-designed. We’ve read all of them carefully.

But we kept running into the same friction points for smaller-scale use cases:

  • Operational overhead: Running etcd in production means dedicated nodes, careful monitoring, and expertise that not every team has.
  • Embedding complexity: If you want to embed consensus into your own service, the path from “I want Raft” to “I have Raft running in my binary” is surprisingly long.
  • Learning curve: Raft papers are approachable. Production Raft implementations are a different story — layers of optimization obscure the core protocol.

d-engine aims to close that gap. It should be:

  • Cheap to run — works on small nodes, low memory footprint.
  • Simple to integrate — clean API, minimal ceremony to get a cluster running.
  • Educationally honest — the code follows the Raft protocol closely so you can read the implementation alongside the paper.

The core Raft implementation is in place:

  • Leader election and log replication
  • Log compaction with snapshots
  • Membership changes
  • A key-value store on top as the reference application

We follow established Raft best practices and reference the implementations in etcd, openraft, and TiKV wherever their solutions are demonstrably better than ours.

DEventLab is building a family of distributed infrastructure tools. d-engine is the foundation. On the roadmap:

  • d-stream — lightweight event streaming
  • d-queue — durable task queuing

Each project shares the same philosophy: production-quality, developer-friendly, and honest about complexity.

This blog is where we’ll document the engineering decisions behind these projects — not just what we built, but why, what we tried first, and where we got it wrong.

If distributed systems, Rust, and consensus protocols are your kind of thing:

We’re building in the open. Feedback and contributions are welcome.