// the find
youngyangyang04/KVstorageBaseRaft-cpp
【代码随想录知识星球】项目分享-基于Raft的k-v存储数据库🔥
A C++ implementation of Raft consensus with a distributed KV store on top, aimed at developers learning distributed systems who want a project for their resume. The stack is interesting: it bundles a custom fiber/coroutine scheduler, a homemade protobuf-based RPC framework, and a skip-list storage engine — so you're learning multiple layers at once. The README is honest that this is below MIT 6.824 in depth and rigor.
Ships its own fiber runtime and RPC layer instead of pulling in gRPC — you actually see how async I/O and RPC plumbing connect, not just how to call a library. Modular layering is structurally correct: Raft core, kvServer coordination, and the storage engine are separate with clean boundaries. Protobuf schemas for both Raft RPC and KV operations are properly defined and checked in. .clang-format and .clang-tidy configs are included — unusually disciplined for a learning project.
The detailed documentation, Q&A, and explanations are locked behind a paid subscription (知识星球); the public README is a sales page for that community. Dynamic membership change is explicitly unimplemented — a foundational Raft feature that makes this incomplete as a reference implementation. There is no clear log compaction or snapshot mechanism visible in the source tree; Raft without snapshots will grow the log unboundedly and eventually break. The 'how to write this on your resume' section tells you what this is optimized for — interview prep, not correctness — and the README itself warns you not to trust it as a rigorous implementation.