Называет события в прошедшем времени и отделяет их от адресных команд
Зачем
Зачем это нужно
Фиксирует владельца факта и минимальный устойчивый набор данных
Учитывает повторную доставку, позднее событие и совместимость схемы
Вопросы
Частые вопросы
Что класть внутрь события?
Достаточно данных, чтобы потребитель понял факт и обработал его без гонки за уже изменившимся состоянием, но не копию всей сущности по привычке. Модель сравнит тонкое уведомление и самодостаточный факт для вашего процесса. Персональные поля включают только при явной необходимости и сроке хранения.
Как менять схему события?
Безопаснее добавлять необязательные поля и поддерживать старых потребителей, а несовместимую форму выпускать как новую версию с периодом сосуществования. Модель составит матрицу производителей и потребителей. Удалять поле можно после наблюдаемого подтверждения, а не после догадки, что им никто не пользуется.
Что делать с нарушенным порядком?
Не полагаться на глобальный порядок, если брокер его не гарантирует. Для одной сущности помогают ключ партиционирования, номер версии и проверка текущего состояния. Модель предложит реакцию на позднее событие: проигнорировать, отложить или пересчитать, исходя из того, обратима ли операция.
Рядом
Соседние страницы каталога
Дальше — весь каталог задач: поиск по названию, темы и фильтры.