假设我们有两个微服务:
用户生命周期管理(CRUD),例如注册和用户个人资料。
管理特定用户创建的订单,在此受限上下文中,该用户应为“买方”。
在创建订单时,Order服务需要知道买方是谁,因此客户将{"buyerId": "xyz"}
作为参数,但是Order服务必须确认buyerId
是存在的用户在创建订单之前,请先在用户服务中添加
在我的实现中,订购服务将使用HTTP来调用用户服务的/ users /:userId api,并将buyerId作为userId来检查购买者是否确实存在。
当前,一切正常,但以下是我的担忧:
此方法可能将Order和User服务耦合在一起,因为当User服务因某种原因崩溃时,Order服务无法检查用户引用,并导致Order服务也无法工作。
如果该用户不存在,则订购服务必须响应用户404 buyer not found
,这确实很奇怪。
有人可以给我一些建议吗?谢谢!