Apache Kafka
Раздел про Apache Kafka: основы (топики, партиции, гарантии доставки, retention) и продовая практика (Spring Kafka, DLQ, Schema Registry, consumer lag, security, KRaft, performance tuning). Со схемами и примерами на Java/Spring.
Зачем для UCP. Kafka — канал для event-driven архитектуры в UCP-сервисах: domain events между bounded context'ами, CDC из БД, аналитика. На уровне зрелости 2+ Kafka почти всегда уже в стеке. Соответствует фазе 12 программы.
Два уровня глубины. Основы разбирают, как устроена сама Kafka и какие гарантии она даёт. Продовый гайд — что специфично для Java/Spring и что нужно знать для эксплуатации.
Статьи раздела
- Основы: топики, партиции, гарантии — что внутри Kafka, как работают консьюмер-группы, какие гарантии доставки бывают, idempotent / transactional producer, replication, retention. Без привязки к языку.
- Kafka в production: Spring Kafka, DLQ, Schema Registry, тюнинг — Spring Kafka (
@KafkaListener,KafkaTemplate), обработка ошибок и DLQ, Schema Registry + Avro/Protobuf, consumer lag, performance tuning (batch.size/linger.ms/compression), безопасность (SASL/SSL/ACL), KRaft вместо ZooKeeper.
Связанное
- Распределённые паттерны — Saga, Outbox, Idempotent Consumer: то, как Kafka используется в реальных системах.
- Kafka Style Guide — правила работы с Kafka в наших Java/Spring-сервисах (коды
R-KAFKA-*). - Паттерны отказоустойчивости — Circuit Breaker, Timeout, Retry: применимо к Kafka-консьюмерам.