Kafka Idempotent Producer становится узким местом с задержкой - PullRequest
0 голосов
/ 12 марта 2019

Мы используем режим Идемпотентного производителя в производителе кафки, потому что мы хотим, чтобы данные хранились ровно один раз, без пропусков и в порядке у брокера. Этот тип замедляется, так как максимальное количество запросов к брокеру может быть только 5. Также с 2 min.insync.replicas и идемпотентным производителем, я вижу, что средняя задержка для пакета 100k сообщений составляет около 20-30 мс на той же машине, где производитель, работают потребительские и кафковые брокеры.

Любые предложения о том, как можно улучшить задержку, сохраняя семантику «ровно один раз, без пробелов и по порядку». Также сообщения являются финансовыми сообщениями о торговле / котировках, поэтому мы не хотим потери данных или пробелов.

1 Ответ

0 голосов
/ 13 марта 2019

Для одного из наших примеров использования telco объем данных был довольно большим, и сообщение должно было быть уникальным, поэтому мы выгружали данные в БД с уникальным индексом по ключевому столбцу и использовали kafka-connect для чтения данных из источника и дальнейшей бизнес-логики.

Преимущество состоит в том, что вам не нужно писать собственную логику для анализа данных перед обработкой, и это гарантирует уникальные сообщения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...