Consensus
Consensus is sufficient agreement among participants or processes on a shared decision, value, state, assessment, or outcome.
Think Like a Software Engineering Manager
Consensus is general agreement reached by members of a group after considering differing views.
- How it is used
- Helps teams resolve disagreements and make shared decisions across engineering and cross-functional work.
- How deep it goes
- Provides conflict-resolution steps and decision-process guidance, but no formal test for when agreement has been reached.
- Examples
- Uses a technical-tool dispute, an operational-readiness document compromise, and distributed-team brainstorming with virtual polls.
- What you can do after
- Practice/perform facilitated discussion that weighs constraints, hears differing views, and records a shared decision.
Read how Think Like a Software Engineering Manager explains consensus →
Real-World Cryptography
A consensus protocol is a protocol by which distributed participants agree on an ordered system state despite communication or participant failures.
- How it is used
- Coordinates replicas and cryptocurrency participants around one committed state despite failures, unreliable communication, or adversarial behavior.
- How deep it goes
- Explains leader election, commit thresholds, fault models, and participation schemes, but does not detail protocol algorithms or proofs.
- Examples
- Uses pizza ordering, replicated database failover, Byzantine generals, Bitcoin block selection, and forks as concrete examples.
- What you can do after
- Evaluate how consensus handles replica failure, malicious participants, commitment, participation, and proof-of-work energy tradeoffs.
Think Distributed Systems
An algorithm that enables distributed nodes to agree on a replicated state or sequence of operations.
- How it is used
- Uses agreement to coordinate replicated processes and support fault-tolerant state machine replication.
- How deep it goes
- Defines formal safety and liveness properties, models crash failures and unreliable networks, and outlines leader-quorum protocols without implementation detail.
- Examples
- Uses transaction commit decisions, operation ordering, lock ownership, a single leader, and a replicated key-value store.
- What you can do after
- Evaluate how agreement protocols preserve safety, support replicated services, and trade guaranteed liveness against system-model limitations.
Apache Kafka in Action
Consensus is distributed agreement among nodes on a shared value or system state.
- How it is used
- Uses consensus to coordinate Kafka metadata, broker health, partition assignments, leader elections, and failover.
- How deep it goes
- Explains majority decisions, node-failure tolerance, coordination architectures, and migration context without detailing consensus algorithm internals.
- Examples
- Uses three- and five-node coordination clusters to illustrate quorum and tolerated failures.
- What you can do after
- Operate/configure Kafka coordination with suitable node counts and distinguish KRaft from ZooKeeper deployments.
Related concepts
- Raftincludes · Raft is a distributed consensus algorithm that uses leader election and replicated logs to coordinate nodes and maintain consistent replicated state despite failures.
- quorumuses · A quorum is the minimum number or proportion of distributed participants whose responses or agreement are sufficient for an operation or decision.
- Zabincludes · ZooKeeper Atomic Broadcast is a distributed coordination protocol that orders and replicates state changes consistently among ZooKeeper servers.
- cluster managementaddressed by · Cluster management is the administration and coordination of computing nodes, including provisioning, configuration, workload scheduling, monitoring, scaling, and decommissioning.
These guides are generated from the text of Manning books by Manning's knowledge graph and link to the sections they draw on. The full books are available on liveBook and at manning.com.



