Kafka
Зачем
Реализация паттерна интеграции Message Broker.
- Log processing and analysis
- Data streaming in recommendations
- System monitoring and alerting
- CDC (Change data capture)
- System migration
VS MessageBus
Фундаментальное отличие Kafka от брокеров очередей состоит в том, как сообщения хранятся на брокере и как потребляются консьюмерами:
- Сообщения в Kafka не удаляются брокерами по мере их обработки консьюмерами — данные в Kafka могут храниться днями, неделями, годами.
- Благодаря этому одно и то же сообщение может быть обработано сколько угодно раз разными консьюмерами и в разных контекстах.
Каждое сообщение (event или message) в Kafka состоит из:
- ключа,
- значения,
- таймстампа
- и опционального набора метаданных (так называемых хедеров).
Сообщения в Kafka организованы и хранятся в именованных топиках (Topics), каждый топик состоит из одной и более партиций (Partition), распределённых между брокерами внутри одного кластера.
TODO https://slurm.io/tpost/pnyjznpvr1-apache-kafka-osnovi-tehnologii