Создать несколько потребителей для одной и той же темы в Кафке
Я новичок и могу видеть один пример с одним потребителем в репозитории github ниже, но есть ли идеи, как создать несколько потребителей для одной и той же темы?
https://github.com/confluentinc/confluent-kafka-go/tree/master/examples
Любая фабрика потребителей (для генерации N потребителей) доступна в confluent-kafka для чтения той же темы (с разделами)?
1 ответ
В Confluent github repo есть пример:
Если вы хотите создать несколько потребителей для одной и той же темы, есть два сценария:
1. Создайте каждого потребителя с другим идентификатором группы.
c1, err := kafka.NewConsumer(&kafka.ConfigMap{
"bootstrap.servers": broker,
"group.id": group1,
"session.timeout.ms": 6000,
"default.topic.config": kafka.ConfigMap{"auto.offset.reset": "earliest"}})
c2, err := kafka.NewConsumer(&kafka.ConfigMap{
"bootstrap.servers": broker,
"group.id": group2,
"session.timeout.ms": 6000,
"default.topic.config": kafka.ConfigMap{"auto.offset.reset": "earliest"}})
- Если вам нужно несколько потребителей для одной и той же темы, но с одним и тем же идентификатором группы, он начнет использовать один раздел. т.е. тема содержит 3 раздела, и вы создаете 3 потребителей с одинаковым идентификатором группы, каждый потребитель будет потреблять из одного раздела