https://blog.csdn.net/weixin_60414376/article/details/126455490

一)同步调用:

image.png

支付服务调用订单服务时,只有当订单服务执行完成之后,才会接着调用仓储服务,以此类推,直到支付服务需要的全部服务都执行完毕之后才会给用户返回执行成功指令,所需时间较长。

存在问题:

1、耦合度高。给系统添加新功能时,必须修改原来的代码,例订单服务调用成功之后要给用户发一个短信,此时就必须去修改订单服务的代码。

2、性能下降。调用者的等待时间=每个子系统调用的时间之和。

3、资源浪费。每个服务在调用完成后等待响应的过程中不能释放请求所占用的资源,并发强度下及其浪费系统资源。

4、级联失败。当仓储服务出现故障之后,之后的短信服务就无法调用了,因为存在阻塞,只有仓储服务完成之后才会调用短信服务。

二)异步调用

image.png