Transactional Outbox - паттерн, знание которого требуют от каждого java разработчика на техническом интервью.
Он позволяет обеспечить гарантированную доставку сообщений во внешние сервисы через сеть, что критично для создания надёжных и устойчивых систем. Я объясню, как работает Transactional Outbox, и продемонстрирую один из способов его реализации на практике.
Код можно посмотреть здесь: https://boosty.to/javagymrat/posts/4d723339-3e99-4396-bf91-0e535957442b
Мои соц. сети:
Поддержать канал на Boosty: https://boosty.to/javagymrat
Telegram: https://t.me/javaGymRat
Instagram: ekondratyyeva
Тайминги:
00:00 - Вступление
00:17 - Какую проблему паттерн решает и когда его использовать?
01:26 - Объяснение подхода на примере
06:19 - Как хранить в бд задачи, требующие повторение?
08:58 - Как шедулер понимает, какие задачи необходимо взять в работу?
10:00 - За счет чего шедулеры не обрабатывают одни и те же записи повторно?
10:55 - Реализация паттерна
15:08 - Необходимость создания интерфейсов сервисов
18:20 - Еще одна популярная тема с собеседований
38:53 - Заключение