Я думаю, что в этой дискуссии упущен важный момент о вытягивании и толкании, и он застрял на отдельных примерах и случаях.
Толкание: Преимущество толкания заключается в том, что вызнать свои данные, и вы знаете, что вы нажимаетеНи один компонент не знает (или не должен знать) данные лучше, чем компонент, которому принадлежат данные, что теоретически означает лучшую конструкцию и более надежную систему.
Подтягивание : единственное преимуществоЯ вижу в подходе вытягивания компонент, который точно знает, когда он должен тянуть.Он может инициировать диалог, когда ему нужны данные, и ни один компонент не знает (или не должен знать), когда нужны данные, чем компонент, которому они нужны.
Мой вывод по этому вопросу: , какой бы компонент не былвладеет транзакцией, она инициирует транзакцию .Если вы извлекаете данные из API, очевидно, что клиент API будет владеть транзакцией, поэтому сделаем попытку.Если вы передаете сообщение, то вещатель владеет транзакцией, поэтому он выполняет толчок.