Domain的动作产生了事件,事件被sent出到event bus 之类的地方去被持久化,这个顺序没问题吧。
现在假定有一个Domain的两个事件A1与A2要被持久化,A1在A2之前发生。
譬如:
A1 : 更新person信息。
A2 : 再次更新person信息。
这两个event通过 event bus 被sent到持久端,这个sent很有可能是走网络,那么如何保证这个两个event还是按照原来的顺序被持久化的呢?
还有一种可能是 虽然是按顺序从event bus里取出,但是server是多CPU的,那么此时也有可能是这两个event被两个cpu同时持久化,这又如何保证其顺序是按照事实的发生顺序而执行的呢?
以前开发都是跟DB打交道的从而能保证这个顺序,因为A1先被持久化了后才是A2。
而现在是 “内存”--》 “event bus” --》“持久化”
比较困惑,希望有人来解惑,thanks