Изменения документа Гарантии доставки
Редактировал(а) Alexandr Fokin 2026/07/27 03:09
От версии 1.6
отредактировано Alexandr Fokin
на 2026/07/19 13:14
на 2026/07/19 13:14
Изменить комментарий:
К данной версии нет комментариев
К версии 1.11
отредактировано Alexandr Fokin
на 2026/07/19 13:29
на 2026/07/19 13:29
Изменить комментарий:
К данной версии нет комментариев
Сводка
-
Свойства страницы (1 изменено, 0 добавлено, 0 удалено)
Подробности
- Свойства страницы
-
- Содержимое
-
... ... @@ -29,9 +29,13 @@ 29 29 \\transactional.id - влияет на идентификацию экземпляра producer при переподключении. |(% style="width:1164px" %)Использование ручного коммита после завершения обработки (транзакции БД). 30 30 \\AutoOffsetReset = AutoOffsetReset.Earliest 31 31 ENABLE_AUTO_COMMIT = false 32 -\\Может использоваться для дедупликации. 32 +\\Возможные проблемы:((( 33 +1. Дублирование на отправке. 34 +1. Не закомиченное смещение (падение consumer). 35 +1. Отвал consumer по timeout (долгая обработка, сообщение передано к другому consumer). 36 + 33 33 TransactionalInbox. 34 - \\Долгая обработка сообщения может привести к отключению consumer по timeout. Это может провести к тому, что сообщение поступит на другой потребитель. В таком случае только TransactionalInbox.38 +))) 35 35 |(% style="width:128px" %)((( 36 36 Exactly‑Once 37 37 )))|(% style="width:1164px" %)Гарантия доставки строго один раз. ... ... @@ -39,9 +39,11 @@ 39 39 ))) 40 40 |(% style="width:108px" %) |(% style="width:1326px" %)((( 41 41 |(% style="width:136px" %)TransactionalInbox|(% style="width:1216px" %)((( 42 -|(% style="width:248px" %)Полный|(% style="width:950px" %)Хранится IdempotencyId каждого входящего сообщения (уникальный индекс), для дедубликации. 43 -|(% style="width:248px" %)Только offset (облегченный)|(% style="width:950px" %)Специфично для kafka. Храниться только topic+partition+offset. 44 -|(% style="width:248px" %) |(% style="width:950px" %) 46 +|(% style="width:207px" %)Полный|(% style="width:991px" %)Хранится IdempotencyId каждого входящего сообщения (уникальный индекс), для дедубликации. 47 +Полная защита от дублей (даже если это несколько сообщений, с одинаковым ключом). 48 +|(% style="width:207px" %)Только offset (облегченный)|(% style="width:991px" %)Специфично для kafka. Храниться только topic+partition+offset. 49 +Защищает только от потери смещения (сообщение обработано, но offset не закомичен) и consumer timeout. Не поможет при дублировании на отправке (более 1 сообщения). 50 +|(% style="width:207px" %) |(% style="width:991px" %) 45 45 ))) 46 46 |(% style="width:136px" %) |(% style="width:1216px" %) 47 47 )))