Ember: A lean Redis alternative using Raft and SWIM
ToolingComments
drop-in replacement is a stretch if it lacks lua scripting.
We saw this play out with a few other Rust-based KV stores last year; the lean Raft implementations usually struggle with leader flapping during network partitions. It is the usual trade-off between a small codebase and production-grade stability.
Using SWIM for membership should actually help mitigate some of those flapping issues by providing a more resilient failure detection mechanism. It is a thoughtful choice for keeping the cluster stable.
If the target use case is a small-scale internal cache rather than a global state store, would the simplicity of the Raft implementation actually be a feature? The operational overhead might be lower if the failure modes are predictable and easier to debug.