【发布时间】:2017-01-28 08:21:06
【问题描述】:
我知道微服务是分离上下文并允许我们创建更小的模型的好方法。实现解耦的方法之一是微服务之间的异步发布/订阅通信。
假设微服务 A 负责处理请求,为此它需要存储在微服务 B 中的信息。 解决这个问题的方法之一是,让微服务 A 订阅来自微服务 B 的事件,将所需数据的一部分复制到它的数据存储中,然后将其用于将来的处理。
现在,如果用户向微服务 A 发送请求来处理某事,而微服务 A 没有处理来自微服务 的最新事件B,使用同步通信并直接请求那部分数据会更好吗?如果是,这是否被认为是对当前设计和耦合的“违反”?
是否也可以认为是错误的建模?例如 - 如果在 A 上下文中需要数据,那么它应该从一开始就是该上下文的一部分。
【问题讨论】:
标签: architecture domain-driven-design microservices