Выбор ответа Middle Очереди и события обновлено

Растёт consumer lag

Вопрос

Consumer lag топика растёт весь день. Обработка одного сообщения 50 мс, консьюмеров 4, партиций 4, входящий поток 200 сообщений в секунду. В чём дело?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: 4 консьюмера по 50 мс тянут 80/с, а приходит 200. Один консьюмер последовательно делает 1000 / 50 = 20 сообщений в секунду, четыре около 80.

Варианты ответа

  1. Kafka перегружена записью 200 сообщений в секунду
  2. Партиций слишком много для четырёх консьюмеров
  3. 4 консьюмера по 50 мс тянут ~80/с, а приходит 200правильный ответ
  4. Отставание растёт из-за сжатия сообщений на брокере

Разбор

Один консьюмер последовательно делает 1000 / 50 = 20 сообщений в секунду, четыре около 80. Приходит 200, поэтому отставание растёт. Нужно увеличить параллелизм (больше партиций и консьюмеров, или параллельная обработка внутри консьюмера с сохранением порядка по ключу) либо ускорить обработку батчами. Kafka держит такой поток легко, лишних партиций тут нет, сжатие не причина.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.