Виктор Гамов — Один раз в год сады цветут: разбор семантики «exactly once» Apache Kafka

preview_player
Показать описание
Ближайшая конференция — Joker 2024, 9 октября (Online), 15–16 октября (Санкт-Петербург + трансляция).
— —
. . . . Disclaimer: Если вас триггерит от слов «exactly-once delivery», то этот доклад обязателен к просмотру!

Рост популярности Apache Kafka как потоковой платформы потребовал пересмотра традиционной «как минимум один раз» (at least once) семантики доставки сообщений. В этом докладе Виктор расскажет, что означает семантика «exactly once» в контексте Apache Kafka, какие изменения в протоколе и формате сообщений потребовались, как устроены транзакции и идемпотентные функции Kafka-клиентов. Также поговорим о том, как эти нововведения нашли свое отражение в смежных фреймворках — Kafka Streams и Kafka Connect.
Рекомендации по теме
Комментарии
Автор

Коротко: 1 обновите кафку, 2 используйте транзакции - весь доклад.

А про вычитывание по 500 сообщений по дефолту и перечитывании до полной обработки и коммите офсета всех 500 - да кому оно нужно!

IIIObscureIII
Автор

Внимание! На слайдах в районе 25:00 перепутаны at least once и at most once

alexshavlovsky
Автор

Мне кажется или минимум один раз и максимум один раз перепутаны местами? На 25.39

kza
Автор

25:13 Не понимаю, что мешает вести уникальные id-шники сообщений от каждого Producer?
Послал Producer сообщение с id 188, ack не получил, делает retry. А Kafka получив его второй раз видит, что с id=188 сообщение уже есть и отправляет ack без повторной записи...
Неужто настолько сложная логика, что сильно затормозит систему?
29:38 - Собственно, что и сделали... ProducerID и SequenceID - очевидные решения.

eibyyeo
Автор

May be you do know kafka, but explaining things is not your asset. This was terrible, sorry mate.

skies
Автор

Механизм транзакций похож на то, что в postgres используется.

gwdfnse
Автор

enable.idempotence=true ставит кафку(4 ноды 32Гб RAM, min isr 2) версии 3.0 раком, даже при микроскопическом RPS порядка 300 штучек

EvgenyYugov
Автор

До того как изобрели велосипед-kafka уже был JMS

faithInAct