Pooya Eimandar’s Post

View profile for Pooya Eimandar, graphic

Author | GPU & Real-Time Streaming Expert | Co-Founder, CTO & Product Manager at Arium

What is #Raft? Raft is a consensus algorithm designed for managing replicated data in distributed systems. The goal of Raft is to ensure that a group of nodes in a distributed system can work together to maintain consistent and reliable data changes. Raft is an alternative to the more complex #Paxos algorithm. It includes leader election, where one node in a cluster is elected as the leader. The leader manages the replication of data entries to other nodes. If the leader fails or becomes disconnected, a new leader is elected through a distributed consensus process. This approach eliminates the need for a #Zookeeper-like system and provides automated high availability and strong consistency guarantees. Raft vs Paxos? Both of these algorithms function like way for a group of friends to make decisions together, even when some are not present simultaneously. The key differences lie in their complexity and ease of implementation. Raft has gained popularity specifically for its clarity. Raft has been widely adopted and implemented in various distributed systems and platforms. Notable users and implementations of Raft include Redpanda Data (based on #Seastar), #TiKV database, RedisRaft (under development), etcd, RethinkDB, The Apache Software Foundation's brpc (based on Baidu, Inc.'s braft), and others. In Arium, we are using Raft to orchestrate our gaming machines. For C++, #RaftLib is a good implementation, and alternatives include eBay's #NuRaft and Redis's Raft (developed base on Willem-Hendrik Thiart's work) are good as well. libraft: https://lnkd.in/d9AJd_fa redislabs: https://lnkd.in/dz5Cdany NuRaft: https://lnkd.in/dJW8sydM #tech #programing #distributed #system #cpp

  • No alternative text description for this image

To view or add a comment, sign in

Explore topics