业务解耦

将模块间的RPC调用改为通过消息队列中转,解除系统间的耦合
image.png

思考:相比RPC风险更大,RPC模块集成在业务内部,故障一般导致局部不可用,其它仍然可用

异步调用

对于无需关注调用结果的场景,可以通过消息队列异步处理
image.pngimage.png

流量削峰

系统的吞吐量往往取决于底层存储服务的处理能力,数据访问层可以调整消费速度缓解存储服务压力,避免短暂的高峰将系统压垮
image.png