External Resources — Messaging & Queues¶
Official Documentation¶
| System | Docs | Notes |
|---|---|---|
| Apache Kafka | kafka.apache.org/documentation | Definitive reference — design, configuration, ops |
| Confluent Platform | docs.confluent.io | Kafka + Schema Registry + ksqlDB docs |
| RabbitMQ | rabbitmq.com/docs | Exchanges, routing, clustering, monitoring |
| Amazon SQS | docs.aws.amazon.com/sqs | FIFO, DLQ, visibility timeout |
| Amazon SNS | docs.aws.amazon.com/sns | Fan-out, filtering, delivery retries |
| Apache Pulsar | pulsar.apache.org/docs | Multi-tenancy, geo-replication, Functions |
| NATS | docs.nats.io | JetStream persistence, queue groups |
| Google Pub/Sub | cloud.google.com/pubsub/docs | Ordering keys, push vs. pull subscriptions |
| Azure Service Bus | learn.microsoft.com/azure/service-bus-messaging | Sessions, DLQ, transactions |
| ksqlDB | ksqldb.io/docs | SQL over Kafka streams |
| Apache Flink | nightlies.apache.org/flink/flink-docs-stable | Stateful stream processing |
Design & Architecture¶
| Resource | What it is |
|---|---|
| Kafka: The Definitive Guide (free PDF) | O'Reilly book, free from Confluent — the Kafka reference book |
| Designing Event-Driven Systems (free PDF) | Ben Stopford — patterns for event-driven architecture with Kafka |
| Enterprise Integration Patterns | Hohpe & Woolf — canonical messaging patterns (Gregor Hohpe is on AWS architecture board) |
| Martin Fowler — Event Sourcing | Foundational article on event sourcing |
| Martin Fowler — CQRS | Command Query Responsibility Segregation |
| Martin Fowler — Saga Pattern | Distributed transaction coordination |
| Transactional Outbox Pattern | microservices.io — solving dual-write |
| The Log: What every software engineer should know about real-time data | Jay Kreps (Kafka creator) — the foundational essay |
Kafka Operations & Internals¶
| Resource | What it is |
|---|---|
| Kafka Improvement Proposals (KIPs) | Track new Kafka features at design stage |
| Confluent Blog | Deep dives on Kafka internals, Schema Registry, Kafka Streams |
| Burrow — Consumer Lag Monitoring | LinkedIn's consumer lag evaluator |
| AKHQ — Kafka UI | Browse topics, consumers, schemas |
| kcat (kafkacat) | CLI producer/consumer/metadata tool |
RabbitMQ¶
| Resource | What it is |
|---|---|
| RabbitMQ Tutorials | Official tutorials — 7 tutorials from Hello World to topics and RPC |
| awesome-rabbitmq | Curated RabbitMQ resources and tooling |
| RabbitMQ Production Checklist | Official hardening guide before going to production |
| Lazy Queues | For high-backlog queues — moves messages to disk |
Benchmarks & Comparisons¶
| Resource | What it is |
|---|---|
| Kafka vs Pulsar vs RabbitMQ (Confluent) | Confluent's comparison (biased but technically detailed) |
| TPC benchmarks for message brokers | ActiveMQ performance data — useful baseline |
Related Topics¶
- Kafka Deep Dive
- Best Practices
- awesome-kafka
- DBRE Scaling — Kafka as CDC transport
- SRE Observability