假设我们有一个管理用户数据的微服务U.现在我们有另外两个微服务A和B需要用户数据,这些数据通过例如消息队列。微服务A和B都基于新用户数据更新一些数据并将结果发布到另一个队列。
现在我们有另一个服务C,它取决于服务A和B的结果。服务C将聚合来自A和B的数据并发布结果。现在我们有两个问题:
他们是否有针对此问题的解决方案模式?
我目前想到的一个问题是:服务A和B必须在其结果中包含数据所基于的U版本。然后C可以等到它具有来自A和B的基于相同版本的U的一致数据版本。我看到这个解决方案的缺点是现在C必须知道A和B的数据形式是基于U的。