项目开发过程中,特别微服务后,不同模板之间存在相互调用,比如订单和物流,订单下单要生成物流单,物流状态修改后需要完成订单回写,这样订单服务调用了物流服务,物流调用订单服务。
1、其实做法很简单,如果不是微服务的模式,我们做个调度服务,把相互交互的写在这个服务里面,这个就可以避免相互调用,对于微服务就更加简单了,就是把这些服务提取出基础服务,再通过服务进行管理调用。
2、异步订阅方式,很多相互调用的时候都不需要事务回写,这个时候我们可以通过发布消息,那边订阅后去处理,可能存在不同步现象,这个可以用mq回写订阅机制来确保