分布式系统由需要通信的服务构成,最简单的通信方式就是一个服务直接调用另一个服务并等待响应。这种模式适用于小型系统和可预测的工作负载。
然而,随着系统的增长,它往往会导致服务之间的紧密耦合、脆弱的故障行为,以及任何调用链中最慢的组件出现瓶颈。
事件驱动架构是一种替代性的通信模型,其中服务在发生有意义的事件时发布事件,其他服务则根据自身情况对这些事件做出响应。与此架构相关的模式是处理该模型引入的新问题的成熟技术。
在本文中,我们将从事件驱动系统的基本结构入手,探讨同步通信在大规模应用时为何开始失效,然后介绍六种解决 EDA 引入的特定问题的模式。
事件驱动架构的基础
原文: https://blog.bytebytego.com/p/a-guide-to-event-driven-architectural
