Все наши 30 тем созданы с 10 разделами в нашей кафке. Мы отслеживаем отставание по разделам для всех идентификаторов тем / групп.
Мы используем плагин Fluentd для чтения и маршрутизации журналов из kafka. Плагин реализован с использованием потребителя высокого уровня. Мы настроили некоторых потребителей для отдельных тем, а некоторых - для нескольких тем для плагина. В целом, данные проходят без проблем, за исключением трех тем.
Проблема в том, что для 3 из 30 обрабатываемых тем мы видим, что значения запаздывания раздела несовместимы, т.е. если посмотреть на значения задержки для определенной темы / идентификатора группы, то задержка для некоторых разделов намного выше, чем для других разделов, иногда на целых 30 КБ. Однако для остальных 27 тем числа лагов для всех разделов остаются одинаковыми, все разделы одной темы / идентификатора группы остаются в пределах близкого расстояния друг от друга (например, все между 12 и 18).
Почти каждый раз, когда мы перезапускаем агент Fluentd (который перезапускает высокоуровневых потребителей), мы видим, что лаг начинает сглаживаться для этих трех тем, и иногда они остаются постоянными в течение некоторого времени, а затем снова цифры лага начинают становиться зигзагообразными. Это происходит только для трех тем. Но когда мы проверяем распределение по этим трем темам, все выглядит нормально.
Мы не понимаем, в чем причина этого. Потребители высокого уровня не используют код для управления извлечением данных из разделов. Это библиотека kafka, которая обрабатывает эту часть. Все, что указывает потребительский код, - это количество потоков. Мы пробовали 10, 5 и во всех случаях (особенно 10 и 5 потоков) несоответствие задержек продолжает проявляться для этих 3 тем. Объем данных не превышает 30 КБ в час по каждой из этих тем.
Любые предложения относительно того, в чем может быть причина? Что с этим можно сделать?
Заранее благодарю за вашу помощь.