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