Шаблон “публикация событий” или Outbox¶

Предположим, что у приложения есть реляционная БД. Используем специальную таблицу OUTBOX для вставки сообщений в рамках транзакции бизнес-логики.
Далее ретранслятор (это компонент сервиса) вычитывает сообщения из этой таблицы и отдает брокеру.
Если у нас NoSQL БД, добавляем поле со списком сообщений, которые нужно отправить, к каждому бизнес-объекту, порождающему сообщения. Это атомарная операция. Трудностью тут будет эффективный поиск сообщений, которые требуется опубликовать. См. также шаблоны “Опрашивающий издатель” и “Отслеживание транзакционного журнала”.
Ссылки¶
https://microservices.io/patterns/data/transactional-outbox.html
Последнее обновление :
21 июня 2023 г.
Дата создания : 14 июля 2022 г.
Дата создания : 14 июля 2022 г.