5.2 事件拓展机制

事件机制可以非常优雅的实现业务的解耦,同时事件可以转化为消息,从而实现跨服务之间的拓展与通讯,还可以借助事件实现分布式技术的高性能方案。
领域驱动设计可以简化业务复杂度,提升业务的适配能力,而事件则可以提升系统的拓展能力与性能。

我们主要来分享事件机制的三大优点:
1.业务解耦
通过事件机制,可以让业务触发点实现无限的拓展能力,无论是业务线的串联还是并联都可以基于发布的事件实现无限的拓展能力。所以通过埋入一些事件机制,从而降低了业务的耦合性,即便是串联的业务线,也不需要是强连接的方式串联了。
2. 消息拓展
事件可以通过拓展消息中间件订阅的方式,将事件消息发布到消息队列或流处理的服务中,从而可以将进程内部的状态同步,延申到跨服务的状态同步,从而进一步提升系统的拓展能力。
3.弹性拓展
在很多高并发的业务场景中,为了满足负载需求,经常需要做负载均衡或分布式存储。我们可以通过领域驱动设计+事件机制实现业务服务的无状态化,借助事件机制负载数据的存储能力,从而实现高性能弹性计算能力。
关于弹性拓展的进一步介绍:
在高并发的场景中,单纯的负载均衡是简单的,但是想要达成高吞吐量时,系统的性能短板通常是取决于有状态服务的瓶颈上。
无状态服务的负载均衡:

有状态服务的负载均衡:

基于事件机制的负载均衡服务:
