在域驱动的设计中,我们创建有界的上下文。这意味着聚合不共享通用模型。
Microsoft的这张图片显示了聚合如何使用命令和事件(source)进行通信。
假定这些聚合是至少两个不同的微服务,它们编码在不同的存储库中。 他们应该如何共享与之通信的命令和事件的方案定义?在我的情况下,那些应用程序是.net核心应用程序,因此与.net兼容的序列化和反序列化将是可取的。
而且,由于我是域事件的新手,并且交流方式有所不同,所以我可能遗漏了一点,然后我想知道,我没有看到什么。
每个服务可以有一个内部模型,并且可以在服务之间使用Canonical Data Model进行通信。
通常有一个单独的模型用于集成服务使用的内部模型。
您还可以检查enterpriseintegrationpatterns.com中的所有样式并获取书。强烈推荐。