DDD 限界上下文 rest api 集成

DDD bounded context rest api integration

我有一个域,其中存在可以相互分配任务的团队成员。我有 2 个有界上下文:

TeamBC:管理团队成员及其信息。

TaskBC:任务及其分配的管理。

TeamBC 是上游,TaskBC 是下游。 TeamBC 中的概念"member" 是TaskBC 中的概念"recipient"。任务的接收者是任务分配给的团队成员。

我使用同步集成,在 TeamBC 中使用 rest api,在 TaskBC 中使用 ACL。收件人是 TaskBC 中的 VO。

我的问题:

与 rest 集成时 api(不使用 BC 之间的消息传递),下游上下文是否必须从上游复制任何数据?在我的例子中......TaskBC 是否必须将来自 TeamBC 成员实体的任何数据存储在其数据库中?

不必复制任何东西,但可以

通过消息传递进行纯事件集成,BC1 别无选择,只能在收到消息时存储从 BC2 获得的有趣信息,因为它无法在需要时重新请求它们.

通过 REST API 集成,没有这样的限制。但是,强迫自己只存储本地副本而不随意接触到其他BC仍然具有相对异步的优势and/or 减少直接调用。

实际上,您可能会得到以下两者之一:如果您选择轮询,则异步;如果您选择 BC1 => BC2 通过 API 通知,则直接调用较少。