我对开发 DDD 应用程序非常有信心,但是当两个应用程序相互集成时,一个继续给我带来问题的领域是。我正在努力寻找有关该主题的任何有用的书籍或资源。诸如 EAI 模式之类的书籍深入探讨了消息传递模式和消息构造,但并未真正解释如何构建利用这些模式的系统。
我搜索了高低,我很确定没有示例应用程序可以演示如何集成两个系统。我了解异步消息传递的概念,但又找不到如何应用它的好例子。
SOA 上的资源似乎一直在重复相同的概念,而没有演示如何实现它们,而且往往似乎更关心向我推销产品。
以下是我正在努力回答的问题:
每个应用程序都应该拥有自己的数据副本吗?例如,组织内的每个应用程序是否都应该拥有自己的客户端列表,并在收到消息后更新?
在 DDD 堆栈中的哪个点传递消息?它们是领域事件的结果吗?
我可以将异步消息传递和 WCF 结合起来还是必须选择?我是否将 WCF 用于请求/响应和消息传递以进行发布/订阅?
一个 DDD 应用程序如何使用另一个 DDD 应用程序的服务?一个 DDD 应用程序应该通过其应用程序服务查询另一个系统的数据,还是应该已经拥有自己的本地数据副本,如第 1 点所述?
显然我不能跨两个系统进行交易。我该如何避免这种情况?
如果我听起来很困惑,那是因为我是。我不是在寻找上述问题的答案,只是指出可以回答这个问题和类似问题的资源方向。