Manuál
Kompletní průvodce Kafka
Kafka je distribuovaná streaming platforma. De-facto standard pro event-driven architektury.
Základní koncepty
- Topic — kategorie zpráv
- Partition — horizontální dělení topicu
- Producer — píše zprávy
- Consumer — čte zprávy
- Consumer Group — group of consumers, každý čte jiné partition
- Offset — pozice v partition
- Broker — Kafka server
Příkazy
# Vytvoření topicu
kafka-topics --create --topic orders --partitions 6 --replication-factor 3
# Listování
kafka-topics --list
# Produce
kafka-console-producer --topic orders --bootstrap-server localhost:9092
# Consume
kafka-console-consumer --topic orders --from-beginning --group my-group
kafka-topics --create --topic orders --partitions 6 --replication-factor 3
# Listování
kafka-topics --list
# Produce
kafka-console-producer --topic orders --bootstrap-server localhost:9092
# Consume
kafka-console-consumer --topic orders --from-beginning --group my-group
Use cases
- Event streaming (user events, logs)
- Microservices komunikace
- Change Data Capture (CDC)
- Real-time analytics pipeline
- Log aggregace
Guarantees
- At-most-once — může ztratit zprávy
- At-least-once — může duplikovat (default)
- Exactly-once — idempotentní producer + transactional consume
Alternativy
- RabbitMQ — jednodušší, message queue (ne streaming)
- NATS — lightweight, cloud-native
- Redpanda — Kafka-kompatibilní, bez JVM
Kdy Kafka
Kafka pro high-throughput event streaming. RabbitMQ pro task queues. NATS pro lightweight messaging.