1

在我的领域中,我有 2 个与此问题相关的有界上下文:

  1. 采购 - 客户订购服务的地方
  2. 履行 - 将服务分配给供应商以完成

要求客户在整个订单生命周期的任何给定时间都可以编辑订单。

如果客户从订单中删除了一项服务(即在购买环境中),如果该服务已经分配给供应商以执行(但尚未执行),那么该服务也必须在履行环境中删除。

这里有几个选项,我想听听社区的意见:

  1. 我的上下文错误,因为这将创建一个跨上下文事务。
  2. 我在这里可能不需要事务一致性。当然,这是由业务利益相关者决定的,这引出了两个问题:实施选项是什么?我如何向业务利益相关者提出这个问题?
  3. 这是对“无跨上下文事务”规则的可接受的违反。

编辑

这一切都发生在一个进程中,因此中间事务失败的可能性非常低。

4

2 回答 2

2

这是要问您的利益相关者的问题,回复:订单始终可编辑 - 订单在完成后进行编辑意味着什么?

于 2011-06-28T05:59:51.653 回答
0

为什么有必要在编辑订单时影响履行服务?

在我看来,这跨越了有界的上下文。订单在编辑时不应离开其域,除非有充分的理由。为什么任何订单信息会在完成之前传播到履行服务?

基于我对您的领域的显然非常有限的理解,我认为您会先完成订单,然后将创建事件发送到服务总线,由履行服务接收。因此,不会发生跨上下文的事务。

于 2011-06-29T12:11:03.890 回答