Jing Yang baf22fec60 Use `IndexTerm` in public API. %!s(int64=3) %!d(string=hai) anos
..
src baf22fec60 Use `IndexTerm` in public API. %!s(int64=3) %!d(string=hai) anos
tests b6016249be Optimize imports in tests. %!s(int64=3) %!d(string=hai) anos
Cargo.toml 8802900d23 Upgrade dependencies. %!s(int64=4) %!d(string=hai) anos
README.md ce53347dd8 Add a README to kvraft. %!s(int64=4) %!d(string=hai) anos

README.md

kvraft

kvraft is a distributed KV store. Both the keys and the values are strings. Put, Get and Append operations are supported.

kvraft provides a consistent view of the managed data to each client. It relies on all clients to be nice and to follow a certain protocol when talking to it. For example, each client should send no more than one request at the same time. Clients are identified by a unique ID number. Each client must register its ID number before sending requests. Multiple clients can co-exist within the same thread or process. There are no consistency guarantees between different clients.

Clients can use the client side library to talk to a kvraft cluster.