Lag — количество unprocessed messages в partition. Диагностика: kafka-consumer-groups.sh --describe. 4 причины: (1) consumer слишком медленный (CPU/DB bottleneck), (2) партиций меньше, чем consumers в group (idle consumers), (3) max.poll.interval.ms < время обработки (rebalance loop), (4) slow downstream (DB, external API). Фиксы: scale up partitions, parallelize, tune max.poll.records.
Ниже: подробности, пример, смежные термины, FAQ.
Бесплатный онлайн-инструмент — проверка health: результат мгновенно, без регистрации.
# Диагностика lag
$ kafka-consumer-groups.sh --bootstrap-server localhost:9092 \
--group my-consumer --describe
GROUP TOPIC PARTITION CURRENT-OFFSET LOG-END-OFFSET LAG
my-consumer orders 0 10000 15000 5000
# Увеличить partitions (non-reversible)
$ kafka-topics.sh --alter --topic orders --partitions 12Для устранения Kafka consumer lag необходимо оптимизировать настройки потребителей и брокеров, а также улучшить производительность сети. Основные шаги включают увеличение количества потребителей, настройку параметров fetch.min.bytes и fetch.max.wait.ms, а также использование партиционирования для равномерного распределения нагрузки. Регулярный мониторинг метрик с помощью инструментов, таких как Prometheus и Grafana, поможет своевременно выявлять проблемы.
Чтобы устранить задержки в потреблении сообщений в Kafka, важно правильно настроить параметры конфигурации. Рассмотрим ключевые настройки, которые могут повлиять на производительность вашего Kafka consumer:
max.poll.records и max.partition.fetch.bytes. Например, увеличение max.poll.records до 500 может помочь увеличить throughput.socket.receive.buffer.bytes и socket.send.buffer.bytes. Увеличение их значений до 64KB может улучшить производительность.num.partitions для каждого топика. Если у вас есть 3 брокера, рекомендуется иметь минимум 6 партиций для равномерного распределения нагрузки.Также стоит обратить внимание на настройки linger.ms и batch.size для оптимизации отправки сообщений. Например, установка linger.ms на 5 мс может помочь уменьшить количество отправляемых запросов.
Рассмотрим практический пример устранения Kafka consumer lag. Предположим, у вас есть consumer, который обрабатывает сообщения из топика orders. Вы заметили, что lag составляет более 1000 сообщений. Вот шаги, которые можно предпринять:
max.poll.records на 500:max.poll.records=500consumer_lag и records_consumed.После внесения изменений мониторьте lag в течение нескольких часов. Если lag продолжает расти, возможно, потребуется провести дополнительные оптимизации, такие как увеличение ресурсов на брокерах или улучшение производительности сети.
Health Score — комплексная оценка технического состояния сайта по 20+ параметрам: SSL, заголовки безопасности, скорость ответа, SEO-технические факторы и доступность.
20+ параметров в одном числе: SSL, заголовки, скорость, SEO-технические факторы.
Каждый параметр с объяснением — что проверяется, что найдено, как исправить.
Сравнивайте Health Score в разные даты — видите прогресс или регресс.
Настройте автоматическую проверку Health Score и получайте уведомление при падении балла.
быстрый аудит перед релизом
оценка технической базы
проверка сайта клиента
экспресс-аудит заголовков
История Health Score проверок и мониторинг состояния сайта в реальном времени.
Зарегистрироваться (FREE)Rule of thumb: 10x ожидаемого throughput на MBps. 1 partition = ~10 MB/s. 100 MB/s throughput → 10+ partitions.
Нет, это non-reversible. Создайте новый topic с меньшим числом, переключите producers, migrate consumers.
Retention: удаляет по времени (7 дней default). Compaction: хранит последнее значение per key — useful для event sourcing / state stores.
Бесплатный тариф — 10 мониторов, проверки каждые 5 мин, без карты. Платные тарифы — интервал от 1 минуты и проверки из нескольких регионов.