Сценарии

Редактировал(а) Alexandr Fokin 2025/10/19 14:21

Интеграционное тестирование
TestContainers

Тестируем Kafka с Testcontainers
https://habr.com/ru/companies/otus/articles/931264/

Docker image: apache/kafka-native (конфигурация без zookeper).

  
Пакетная обработка, batching.
 Ручное управление значением offset для consumer позволяет реализовать сценарий группового чтения.
Потребитель в рамках одной итерации извлекает N сообщение, обрабатывает их, после обработки также фиксирует необходимый offset.
Данные может быть более производительным и, например, использовать одну транзакцию для обработки батча записей.
 Пакетную обработку можно реализовать и без продвинутого ручного управления offset. Брокер позволяет вычитывать пакет сообщений и выполнить коммит offset по последнему смещению.
Это позволяет использовать не Db transaction per message, а Db transaction per batch.
Тут могут быть вариации работы с savepoint и обработкой ошибками.
Нужно прорабатывать упорядоченность, целостность и обработку ошибок.

В целом чем меньше transaction, savepoint, запросов к БД (чтение, запись) тем выше пропускная способность.
  
  

Внутренние ссылки:

Дочерние страницы:
Обратные ссылки: