开发者社区> 问答> 正文

使用事件驱动架构怎么避免以下的问题呢?

在供应链中台这样复杂的微服务架构中,下游服务的开发者会面临什么难题?

在供应链中台这样复杂的微服务架构中,上游服务的开发者会面临什么难题?

使用事件驱动设计怎么实现契约定义和运行时的全面解耦?

在基于请求/响应方式的服务化架构中,上游服务按照约定的RPC接口调用下游服务,这样有一个比较严重的问题:上游服务作为数据(例如业务单据)的生产者,强依赖了作为数据消费方的下游服务所定义的接口,导致上游服务自身无法沉淀接口和数据标准。这种问题怎么解决?

展开
收起
罗鹏大佬 2022-04-18 17:31:41 435 0
来自:阿里技术
1 条回答
写回答
取消 提交回答
  • image.png

    1、上下游完全解耦,上游服务只要保证将事件成功发送到Broker,无论有几个下游消费者,都不会影响自身的RT,也不需要考虑下游服务之间的一致性; 2、下游服务在接入新的事件时,只需要在事件管理服务中走完订阅审批流,不需要等待事件发布者排期和联调; 3、通过事件Broker提供的事件过滤能力,下游服务只需要消费与自身相关的事件流量(例如:天猫超市的计费服务只需要消费tenantId为天猫超市的采购单创建事件,而不需要消费银泰租户的采购单创建事件); 4、通过事件Broker提供的事件存储能力和重投能力,即使上游服务发送的事件流量超过了下游服务的处理能力,也只会影响下游服务的消费延迟,不会导致大量请求失败的情况。

    2022-04-19 14:50:38
    赞同 展开评论 打赏
来源圈子
更多
收录在圈子:
+ 订阅
问答排行榜
最热
最新

相关电子书

更多
微服务×容器Meetup:云原生架构与应用专场PPT合辑 立即下载
云原生架构容器&微服务优秀案例集 立即下载
以银行架构视角解读和落实银行数字化转型的两份重磅指导文件 立即下载