Мне было интересно, существует ли четкое различие между средами, управляемыми сообщениями и событиями, когда мы обращаемся к SOA или промежуточному программному обеспечению и обычно в случаях применения и интеграции предприятия. Я понимаю, что пользовательский интерфейс похож на модель, управляемую событиями, где наша система перехватывает действие пользователя.
Также ясно, что обмен сообщениями поддерживает системы на основе публикации/подписки, синхронной или асинхронной связи, транзакций и т.д.
Но есть ли разница в контексте промежуточного ПО /soa/application intergration? (уровень архитектуры). Я пытаюсь проконсультироваться с такими источниками, как wikipedia (здесь, и здесь), но я все еще несколько смущен. Когда разработчик предпочитает одно решение над другим?
Есть ли примеры или случаи, когда один подход имеет больше смысла, чем другой? Или какие-либо всеобъемлющие ресурсы и руководства для реализации каждого из них?
Большое спасибо за понимание.