Как обеспечить exactly once семантику в Kafka? Как технически обеспечивается идемпотентность продюсера?
Обеспечение семантики exactly-once в Apache Kafka достигается за счет идемпотентности продюсера и транзакций.
Читать ответПодготовка к интервью
13 вопросов с ответами по теме «Гарантии доставки сообщений»
Что проверяют на интервью
Сравните семантики обработки сообщений и последствия сбоев между записью, обработкой и подтверждением. В подборке — дедупликация, идемпотентный producer и согласование публикации с транзакцией БД.
Каталог
Обеспечение семантики exactly-once в Apache Kafka достигается за счет идемпотентности продюсера и транзакций.
Читать ответЧтобы гарантировать доставку сообщения в Kafka продюсером даже при отказе лидера партиции, нужно использовать следующие подходы:
Читать ответДля гарантии доставки сообщений выбор между Kafka и RabbitMQ зависит от конкретных требований к системе.
Читать ответЕсли изменить настройки продюсера Kafka нельзя, гарантировать доставку сообщений можно за счёт следующих подходов:
Читать ответОбычно различают at-most-once, at-least-once и exactly-once. При at-least-once сообщение обрабатывают до подтверждения, поэтому сбой между обработкой и подтверждением может вызвать повтор.
Читать ответAt-most-once означает обработку сообщения не более одного раза: повторов избегают ценой возможной потери. Например, сообщение отмечают обработанным до выполнения полезной работы.
Читать ответНадёжность доставки в Kafka обеспечивается за счёт репликации данных между узлами кластера Для этого применяется механизм ISR (in-sync replicas): запись подтверждают только реплики, которые синхронизированы с лидером…
Читать ответExactly-once обработка в Kafka: как реализовать и что учесть Тема: обработка сообщений, Kafka, идемпотентность В основе exactly-once находится транзакционная запись в Kafka через Transaction API Применяется…
Читать ответДедупликация событий в Kafka для Exactly-Once без транзакций категория: реализация Exactly-Once без транзакционного механизма главная задача — не допустить повторной обработки дублирующихся сообщений базовый принцип —…
Читать ответRabbitMQ — брокер сообщений, поддерживающий подтверждения (ACK) Настроить у потребителя ручные подтверждения (manual ACK) Если потребитель завершился до отправки ACK, сообщение сохраняется в очереди и передается…
Читать ответобласть: распределённые системы, messaging основные модели: At-most-once, At-least-once, Exactly-once At-most-once: сообщение доставляется 0 или 1 раз; возможна потеря, но дубликаты не возникают At-least-once:…
Читать ответОбласти применения: распределённые системы и обработка сообщений При at-least-once delivery сообщение гарантированно доставляется как минимум один раз. При сбоях и повторных попытках доставки могут появляться…
Читать ответ