awesome-repositories.com
博客
MCP
awesome-repositories.com

通过 AI 驱动的搜索,发现最优秀的开源仓库。

探索精选搜索开源替代品自托管软件博客网站地图
项目MCP 服务器关于排名机制媒体报道
法律隐私政策服务条款
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·

Distributed consensus algorithm

排名更新于 2026年7月28日

For distributed consensus, the strongest matches are apache/zookeeper (ZooKeeper is a distributed coordination service and consensus engine), baidu/braft (This C++ library implements the Raft consensus algorithm for) and coreos/etcd (It is a distributed key-value store that implements the). sofastack/sofa-jraft and lni/dragonboat round out the shortlist. Each is ranked by relevance to your query, popularity and recent activity.

Explore the top open-source distributed consensus algorithm repositories, ranked by stars and activity. Compare implementations to find the best fit.

Distributed consensus algorithm

用 AI 发现最棒的仓库。我们将通过 AI 为您搜索最匹配的仓库。
  • apache/zookeeperapache 的头像

    apache/zookeeper

    12,763在 GitHub 上查看↗

    ZooKeeper is a distributed coordination service that provides a centralized system for managing configuration, naming, and synchronization across a cluster of distributed processes. It functions as a cluster consensus service, a distributed configuration store, and a distributed lock manager to maintain a consistent state across multiple network nodes. The service implements a consensus protocol to ensure data consistency and uses a replicated state machine to maintain identical copies of the system state across all servers. It provides a distributed lock management system to coordinate exclu

    ZooKeeper is a distributed coordination service and consensus engine that uses atomic broadcast protocols to maintain replicated state and synchronize configuration across a cluster of nodes.

    JavaDistributed Consensus ProtocolsReplicated State MachinesConsensus Protocols
    在 GitHub 上查看↗12,763
  • baidu/braftbaidu 的头像

    baidu/braft

    4,216在 GitHub 上查看↗

    braft is an embeddable C++ library that implements the Raft consensus algorithm, providing a distributed consensus engine for building fault-tolerant, replicated state machines. At its core, it manages leader election, log replication, cluster membership changes, and state machine synchronization across a cluster of nodes, ensuring strong consistency and data durability even in the face of node failures. The library distinguishes itself through a comprehensive set of mechanisms for reliable distributed coordination. It uses a randomized timeout-based leader election process with term manageme

    This C++ library implements the Raft consensus algorithm for building fault-tolerant replicated state machines, offering leader election, log replication, membership changes, and state machine synchronization.

    C++Raft Consensus ImplementationsReplicated State MachinesConsensus Log Replication
    在 GitHub 上查看↗4,216
  • coreos/etcdcoreos 的头像

    coreos/etcd

    51,846在 GitHub 上查看↗

    etcd is a distributed key-value store and configuration store designed to maintain a consistent set of data across a cluster of nodes. It functions as a reliable registry for storing and synchronizing critical settings and metadata used by distributed applications. The system implements the Raft consensus algorithm to ensure data consistency and leader election across servers. To protect data transfers and verify node identities, it utilizes a network security layer based on mutual TLS and client certificates. Its capabilities cover distributed configuration management, cluster state synchro

    It is a distributed key-value store that implements the Raft consensus algorithm for reliable state replication and cluster coordination across multiple nodes, matching the core requirements.

    GoRaft Consensus ImplementationsCluster State Coordinators
    在 GitHub 上查看↗51,846
  • sofastack/sofa-jraftsofastack 的头像

    sofastack/sofa-jraft

    3,806在 GitHub 上查看↗

    sofa-jraft is a Java implementation of the Raft consensus algorithm. It serves as a distributed consensus engine and linearizable state machine designed to ensure high availability and data consistency across a cluster of nodes. The project provides a replicated key-value store and a coordination engine for managing distributed state. It distinguishes itself through support for multi-group consensus sharding to distribute traffic and a service provider interface that allows for custom log storage and entry encoding implementations. The system covers a wide range of distributed capabilities,

    This Java library implements the Raft consensus algorithm and state machine replication for coordinating distributed state across nodes, though it omits Paxos support.

    JavaRaft Consensus ImplementationsReplicated State MachinesRaft Implementations
    在 GitHub 上查看↗3,806
  • lni/dragonboatlni 的头像

    lni/dragonboat

    5,308在 GitHub 上查看↗

    Dragonboat is a Go implementation of the Raft consensus protocol designed to maintain consistent state across a distributed cluster of nodes. It provides a library for building distributed state machines that ensure data integrity and fault tolerance during system failures. The project distinguishes itself through a multi-group Raft implementation, which partitions data across independent consensus groups to distribute workloads and increase overall system processing capacity. It also incorporates mutual TLS to encrypt inter-node communication and verify the identity of cluster members. The

    Dragonboat is a Go library implementing the Raft consensus protocol for building distributed state machines with fault tolerance and multi-group sharding, though it lacks Paxos support.

    GoRaft Consensus ImplementationsReplicated State MachinesMulti-Raft Sharding
    在 GitHub 上查看↗5,308
  • etcd-io/etcdetcd-io 的头像

    etcd-io/etcd

    51,838在 GitHub 上查看↗

    etcd is a distributed, strongly consistent key-value store designed to provide reliable storage for critical system metadata and coordination primitives. It functions as a distributed consensus engine, utilizing a replicated log and leader-based state machine to ensure that all nodes in a cluster maintain a synchronized view of data. By providing atomic operations and linearizable reads and writes, it serves as a foundational component for distributed systems requiring high availability and fault tolerance. The system distinguishes itself through its multi-version concurrency control, which e

    etcd is a distributed consensus engine utilizing the Raft algorithm for state machine replication and fault-tolerant coordination, making it a premier choice for reliable cluster state management.

    GoRaft Consensus Implementations
    在 GitHub 上查看↗51,838
  • hashicorp/rafthashicorp 的头像

    hashicorp/raft

    9,037在 GitHub 上查看↗

    This is a Raft consensus library and distributed consensus engine implemented in Go. It provides the primitives necessary to build fault-tolerant distributed services by implementing a replicated state machine that ensures a group of servers agree on a shared system state through leader election and log replication. The project distinguishes itself through a pluggable architecture for storage backends and snapshot storage, decoupling the consensus logic from physical persistence. It includes specialized mechanisms for leadership transfer, protocol version management to support rolling upgrade

    This repository provides a robust Raft consensus library implemented in Go for replicating state across distributed nodes, though it focuses on the Raft protocol rather than Paxos.

    GoRaft Consensus ImplementationsReplicated State MachinesConsensus Protocols
    在 GitHub 上查看↗9,037
  • talent-plan/tinykvtalent-plan 的头像

    talent-plan/tinykv

    3,938在 GitHub 上查看↗

    TinyKV is a distributed key-value store designed for storing and retrieving data across multiple nodes with high availability. It functions as a distributed database system that incorporates a dedicated key-value storage engine for raw data persistence and retrieval on individual nodes. The project includes a Raft consensus engine to ensure data consistency and fault tolerance across a cluster of servers. It also features a distributed transaction manager that coordinates atomic commits and concurrency control to maintain data integrity across shards. The system covers cluster membership man

    TinyKV is a distributed key-value store and consensus engine implementing Raft and cluster membership management, which provides the state coordination and fault tolerance needed to build distributed systems.

    GoRaft Consensus ImplementationsDynamic Cluster Membership Management
    在 GitHub 上查看↗3,938
  • tendermint/tenderminttendermint 的头像

    tendermint/tendermint

    5,861在 GitHub 上查看↗

    Tendermint is a Byzantine fault tolerant consensus engine that replicates a deterministic state machine across a cluster of machines while tolerating up to one-third malicious validators. It functions as a blockchain application platform, connecting application logic to the consensus engine through a socket-based protocol that enables development in any programming language. The system commits blocks when more than two-thirds of weighted validators sign and broadcast their votes, with proof included in the next block. It provides cryptographic state verification, allowing efficient authentica

    Tendermint is a Byzantine fault-tolerant consensus engine that replicates deterministic state machines across a cluster, though it focuses on a BFT-specific model rather than classical Paxos or Raft algorithms.

    GoReplicated State Machines
    在 GitHub 上查看↗5,861
  • apache/brpcapache 的头像

    apache/brpc

    17,545在 GitHub 上查看↗

    brpc is a high-performance C++ RPC framework and network programming library designed for building distributed systems. It functions as a multi-protocol RPC server capable of hosting and detecting multiple communication protocols, including gRPC, Thrift, HTTP, Redis, and Memcached, on a single TCP port. The project distinguishes itself through high-throughput data transport and memory efficiency, utilizing RDMA-based transport to bypass the kernel TCP stack and zero-copy memory management to eliminate data duplication. It also implements the Raft algorithm for consensus-based state replicatio

    brpc is a high-performance C++ RPC framework that includes built-in Raft consensus capabilities for distributed state replication, making it a fitting infrastructural tool although it is broader than a dedicated consensus library.

    C++Raft Consensus Implementations
    在 GitHub 上查看↗17,545
  • logcabin/logcabinlogcabin 的头像

    logcabin/logcabin

    1,961在 GitHub 上查看↗

    LogCabin is a distributed storage system built on Raft that provides a small amount of highly replicated, consistent storage. It is a reliable place for other distributed systems to store their core metadata and is helpful in solving cluster management issues.

    LogCabin is a distributed storage system that implements the Raft consensus algorithm for state replication, making it a fitting engine for reliable node coordination despite focusing on storage metadata rather than being a generic consensus library.

    C++Consensus ImplementationsNetworking and Discovery
    在 GitHub 上查看↗1,961
  • etcd-io/raftetcd-io 的头像

    etcd-io/raft

    1,051在 GitHub 上查看↗

    Raft library for maintaining a replicated state machine

    This Go library provides an implementation of the Raft consensus algorithm for maintaining a replicated state machine, though it focuses narrowly on the algorithm itself rather than serving as a full distributed database engine.

    GoDistributed Systems
    在 GitHub 上查看↗1,051
  • tikv/raft-rstikv 的头像

    tikv/raft-rs

    3,351在 GitHub 上查看↗

    Raft-rs is a Raft consensus library and distributed consensus engine implemented in Rust. It functions as a systems-level protocol implementation that provides foundational message formats and data structures for state serialization across nodes. The library executes the underlying consensus protocol to ensure multiple distributed state machines agree on a shared sequence of log entries. It coordinates state changes across a cluster of nodes to keep replicated logs synchronized and consistent. Additional capabilities include defining protocol buffer messages for consensus communication, enco

    TiKV/raft-rs is a Rust library implementing the Raft distributed consensus algorithm, serving as a core state machine replication building block for distributed systems.

    RustDistributed Consensus ProtocolsRaft Consensus ImplementationsReplicated State Machines
    在 GitHub 上查看↗3,351
  • async-raft/async-raftasync-raft 的头像

    async-raft/async-raft

    1,093在 GitHub 上查看↗

    Async-raft is an asynchronous consensus framework built on Rust for coordinating replicated state machines across distributed nodes. The library implements a leader-based consensus algorithm to ensure data consistency and fault tolerance, managing inter-node communication, log replication, and automated snapshot creation. The framework supports dynamic cluster topology modifications at runtime, allowing nodes to be added or removed without downtime through intermediate configuration phases. It handles log replication through batched and pipelined streaming with congestion control, alongside

    This asynchronous Rust implementation of the Raft protocol handles state replication across nodes, making it a fitting library for distributed consensus despite not covering Paxos.

    RustRaft Consensus ImplementationsConsensus Log ReplicationDynamic Cluster Membership Management
    在 GitHub 上查看↗1,093
  • willemt/raftwillemt 的头像

    willemt/raft

    1,168在 GitHub 上查看↗

    Raft is a portable C programming library that implements the Raft distributed consensus protocol. It serves as a state machine replication engine and coordination primitive for building fault-tolerant distributed applications and clustered systems. The library manages leader election timeouts, heartbeat monitoring, and log replication across peer nodes to maintain consistent state across servers. It handles client write operations, redirects requests from non-leader nodes, processes voting and replication messages, and supports dynamic cluster membership changes through specialized log entri

    This repository provides a C implementation of the Raft consensus algorithm that handles node replication and state coordination, making it a fitting building block despite lacking Paxos and built-in network transport features.

    CRaft Consensus ImplementationsReplicated State MachinesRaft Implementations
    在 GitHub 上查看↗1,168
  • wenweihu86/raft-javawenweihu86 的头像

    wenweihu86/raft-java

    1,228在 GitHub 上查看↗

    Raft-java is a lightweight Java consensus library and replicated state machine engine designed to synchronize transaction logs and maintain fault-tolerant state across distributed server nodes. The framework relies on a leader-based replication model that routes write operations through a designated coordinator node, executing RPC-driven consensus protocols and automatic leader elections to maintain cluster agreement. The library supports dynamic cluster membership changes, allowing nodes to be added or removed during runtime without downtime through joint consensus configuration entries app

    This Java library implements the Raft consensus algorithm for distributed coordination, providing a solid foundation for state machine replication though it lacks Paxos support.

    JavaDistributed Consensus ProtocolsRaft Consensus ImplementationsReplicated State Machines
    在 GitHub 上查看↗1,228
一览前 10 名对比
仓库Star 数语言许可证最后推送
apache/zookeeper12.8KJavaApache-2.02026年6月16日
baidu/braft4.2KC++Apache-2.02024年10月25日
coreos/etcd51.8KGoApache-2.02026年6月16日
sofastack/sofa-jraft3.8KJavaApache-2.02026年6月16日
lni/dragonboat5.3KGoApache-2.02025年7月23日
etcd-io/etcd51.8KGoApache-2.02026年6月16日
hashicorp/raft9KGoMPL-2.02026年6月11日
talent-plan/tinykv3.9KGoApache-2.02025年5月3日
tendermint/tendermint5.9KGoApache-2.02026年6月15日
apache/brpc17.5KC++Apache-2.02026年6月22日

Related searches

  • Distributed transaction protocols
  • 分布式系统学习路径
  • 支持水平扩展的分布式数据库
  • Concurrency design patterns
  • CRDT implementation
  • a framework for building distributed computing systems
  • Consistent hashing algorithm
  • an open source library for p2p networking