fastapi-raft
goraft
fastapi-raft | goraft | |
---|---|---|
1 | 1 | |
3 | 186 | |
- | - | |
10.0 | 5.1 | |
over 1 year ago | about 2 months ago | |
Python | Go | |
MIT License | - |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
fastapi-raft
-
The Raft Consensus Algorithm
I had to implement Raft for a network programming course during my bachelors and I had the same experience regarding how gentle the paper was. Especially for people new to distributed algorithms, I can really recommend it.
My implementation is probably not that great, but I put it online anyway if anyone is interested: https://github.com/skowalak/fastapi-raft/
goraft
-
The Raft Consensus Algorithm
I had a fun time recently implementing Raft leader election and log replication (i.e. I didn't get to snapshotting/checkpointing) recently. One of the most challenging projects I've tried to do.
I collected all the resources I found useful while doing it here: https://github.com/eatonphil/goraft#references. This includes Diego Ongaro's thesis and his TLA+ spec.
Some people say Figure 2 of the Raft paper has everything you need but I'm pretty sure that's just not true. It's a little bit more vague than looking at the TLA+ spec to me anyway.
What are some alternatives?
fastapi-realworld-example-app - Backend logic implementation for https://github.com/gothinkster/realworld with awesome FastAPI
maelstrom - A workbench for writing toy implementations of distributed systems.
FastAPI-Backend-Template - A backend project template with FastAPI, PostgreSQL with asynchronous SQLAlchemy 2.0, Alembic for asynchronous database migration, and Docker.
marmot - A distributed SQLite replicator built on top of NATS
tigerbeetle - The distributed financial transactions database designed for mission critical safety and performance.