我们的每个有界上下文都有一个事件消息处理器,它从上下文总线中提取消息并通过内存总线(反应式扩展,或https://github.com/flq/MemBus)在本地分派它。
在 DDD 书籍中,我读过它谈到将消息放入项目中的模块中,例如mycompany.accounts.infrastructure.messages
和mycompany.ordering.infrastructure.messages
.
对我来说有多个上下文的问题,引用这些消息会导致循环引用。
如何最好地组织不同的有界上下文消息传递合约:
每个有界上下文是否会有一个单独的项目,其中包含该上下文的所有可能消息,以便其他有界上下文可以引用?
还是为将通过上下文总线的所有消息使用单独的共享库更好?