Getting To Know Apache Kafka's Architecture: Ryan Plant
Getting To Know Apache Kafka's Architecture: Ryan Plant
Architecture
Ryan Plant
COURSE AUTHOR
@ryan_plant blog.ryanplant.com
Apache Kafka as a Messaging System
Producers Consumers
Apache Kafka as a Messaging System
Producers Topics Consumers
“X”
“Y”
Broker
Apache Kafka as a Messaging System
Producers Broker Consumers
A
~/A/…
B
~/B/…
C
~/C/…
How Apache Kafka Starts to Differentiate
Producers Consumers
Broker Broker
Broker Broker
Broker Broker
Broker Broker
The Apache Kafka Cluster
Producers Cluster Consumers
Size: 1
Broker Broker
Broker Broker
The Apache Kafka Cluster
Producers Cluster Consumers
Size: 2
Broker Broker
Broker Broker
The Apache Kafka Cluster
Producers Cluster Consumers
Size: 2
Broker Broker
Broker Broker
The Apache Kafka Cluster
Producers Cluster Consumers
Size: 4
Broker Broker
Broker Broker
Later…
Distributed Systems
KAFKA CLUSTER
Distributed Systems: Getting Work Done
PRODUCER
Worker availability and health
Task redundancy
Distributed Systems: Getting Work Done
(Reliably)
PEER
LEADER PEER
LEADER
PRODUCER CONSUMER
KAFKA CLUSTER
Distributed Systems: Communication and
Consensus
APACHE ZOOKEEPER
PRODUCER CONSUMER
KAFKA CLUSTER
Apache Kafka is a Pub-Sub messaging
system, consisting of:
- Producers and Consumers
Summary
- Brokers within a Cluster