DDD:在旧系统中应用Event Store

mar*_*iva 2 domain-driven-design domain-events event-store

我们当前的系统是一个不使用的遗留系统domain events.我们将开始发布domain events.其他有界的背景将会听取这些domain events,但仅限于我们开始发布时,丢失所有过去的信息.

那么,如何处理这个没有记录这些事件的遗留系统,但是我们想要在实现这个事件存储系统之前有过去的历史?

这是一个很好的方法,试图弄清楚发生了什么,并尝试根据我们在数据库中的数据创建域事件(逆向工程)?

tom*_*dge 6

除非有商业理由这样做,否则我不会试图对遗留系统的事件进行逆向工程- 你的用例只是你想要适应新的方式你将使用事件?如果没有商业案例,那听起来就像是浪费精力.

如果在遗留系统中存在一个单独的起始事件来表示每个"事物"的当前状态(即,如果您正在使用DDD概念,那么如何)?然后在此基础上添加新事件.

即

LegacySystemStateCaptured

NewDomainEvent

AnotherNewDomainEvent

...然后,当您重建状态时,应用LegacySystemStateCaptured事件以及其他事件.