Ответ
Сообщения в Kafka записываются в топики (topics).
- Топик — это именованная категория или поток сообщений.
- Каждый топик делится на одну или несколько партиций (partitions) для параллелизма.
- Сообщения в партиции упорядочены и получают последовательный идентификатор — offset.
Ключевые моменты:
- Производитель (Producer) указывает топик для отправки сообщения.
- Сообщение записывается в одну из партиций топика (на основе ключа сообщения или round-robin).
- Потребители (Consumers) читают сообщения из партиций, отслеживая свою позицию (offset).
Пример создания топика:
# Создание топика 'orders' с 3 партициями и фактором репликации 2
kafka-topics.sh --create
--topic orders
--partitions 3
--replication-factor 2
--bootstrap-server localhost:9092
Важно: Порядок сообщений гарантируется только в пределах одной партиции. Масштабирование чтения достигается за счет увеличения количества партиций и потребителей.