Перейти до основного вмісту

kafka-over-rabbitmq

ADR 002: Kafka for Event Streaming (Over RabbitMQ)

Context:
We require high‑throughput, durable, ordered event streaming for seat inventory updates, payment status events, and saga orchestration.

Decision:
Use Apache Kafka as our event backbone, with Confluent Schema Registry & Avro for schema governance.

Consequences:

  • Pros:
    • Extremely high throughput (millions of messages/sec).
    • Native support for consumer groups, partitioning, exactly‑once semantics (idempotent producers).
    • Mature ecosystem: MirrorMaker 2.0 for DR, stream processing options (Kafka Streams).
  • Cons:
    • Operational complexity: KRaft, cluster sizing, retention policies.
    • Slightly higher learning curve vs. RabbitMQ.