Я создаю горизонтальный масштабируемый микросервис Perl без состояния и искал реализацию группы потребителей высокого уровня Kafka.
Я нашел эту библиотеку https://metacpan.org/pod/Kafka::Consumer, которая имеет некоторые низкоуровневые функции, но имеет множество ограничений
- Необходимо явно указать раздел.
Возвращаемое значение
$ consumer-> fetch_offsets ($ topic, # topic 0, $ group);HASH не может использоваться в:
$ consumer-> commit_offsets ($ topic, 0, $ offsets1, $ group);метод.
и т.д ...
В более новых версиях групп потребителей Kafka обрабатываются исключительно Kafka без необходимости в клиенте Zookeeper ипоэтому клиенты в Java, Python, Scala ... просто устанавливают идентификатор группы и оставляют автоматическую фиксацию по умолчанию для обработки смещений.Логика опроса и соединения могут также обрабатываться библиотеками высокого уровня на этих языках, например https://github.com/dpkp/kafka-python
Можно использовать эти строительные блоки или разветвление для создания библиотеки высокого уровня, но я думаю, что кто-то, возможно, ужесделали работу.
Существует ли реализация Persumer Group с открытым исходным кодом в Perl?и где его найти?