5、单体应用重构与微服务架构常见挑战解决

单体应用重构与微服务架构常见挑战解决

1. 单体应用重构为微服务架构

在将单体应用(如ABC - Monolith)重构为微服务架构(ABC - MSA)时,我们已经完成了一些关键步骤。首先,从ABC - Monolith的功能构建出了ABC - MSA的微服务,识别了单体应用中的数据访问,并将单体应用分解为多个独立的微服务,每个微服务都有自己的数据库。

接下来,我们关注如何确保微服务的隔离和关注点分离,这需要研究新ABC - MSA系统中服务请求的编排方式。

1.1 请求分解

ABC - Monolith的功能请求流程已经确定,现在来看它在ABC - MSA中的工作方式。在ABC - MSA中,事务(sagas)在集中式编排器中进行编程和配置。编排器会根据定义的工作流,以同步或异步的方式向事务中的每个服务发起单独的API调用,并等待每个API调用的响应,以确定下一步要发起的其他API调用及其方式。

下面是ABC - MSA工作流的示例:

graph LR
    User(用户) -->|发起订单履行流程| Orchestrator(编排器)
    Orchestrator -->|同时启动| PlaceOrder(place_order服务)
    Orchestrator -->|同时启动| CheckInventory(check_inventory服务)
    PlaceOrder -->|创建订单并标记为待处理| OrderDB(订单数据库)
    CheckInventory -->|检查库存| Inv
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值