2011-08-31 58 views
4

我对开发DDD应用程序非常有信心,但是一个导致我问题的领域是当两个应用程序相互集成时。我正在努力寻找关于这个主题的任何有用的书籍或资源。诸如EAI模式等书籍深入了解消息传递模式和消息构建,但并未真正解释如何构建使用这些模式的系统。分布式领域驱动设计资源

我已经搜索了高和低,我很确定有没有示例应用程序,如何整合两个系统。我理解异步消息传递的概念,但又无法找到如何应用它的好例子。

SOA上的资源似乎不断重复相同的概念,但没有演示如何实现它们,并且更多的时候似乎更多地关注销售我的产品。

这里是那种我在努力回答的问题:

  1. 如果每个应用程序都有它的数据的自己的副本?例如,组织中的每个应用程序是否应该有自己的客户列表,在收到消息后更新它?

  2. 在DDD堆栈中的哪个点传递了消息?它们是域名事件的结果吗?

  3. 我可以结合异步消息和WCF吗?还是我必须选择?我是否使用WCF发送/订阅请求/响应和消息?

  4. 一个DDD应用程序如何消耗另一个DDD应用程序的服务?如第1点所述,一个DDD应用程序是否应该通过其应用程序服务向其他系统查询其数据,还是应该已经拥有自己的本地数据副本?

  5. 显然我不能在两个系统间进行事务处理。我如何避免这种情况?

如果我听起来很困惑,那是因为我。我不是在寻找上述问题的答案,只是指出将回答这个问题和类似问题的资源的方向。

+9

我很失望,这是封闭。它没有征求意见,但实际上已经激发了非常有建设性的答案,如Eric的下文。我向资源寻求方向,这就是我得到的。我认为这是有建设性的,显然还有4个人在2个小时内也做了。我如何反驳这个封闭? –

回答

7

Paul,

我一直在做类似的过渡。我的建议:

  • http://cqrsinfo.com/开始。
  • 收听Distributed Podcast
  • 抓住Greg Young的任何谈话。例如,here是Eric Evans采访Greg。他有一些全天会议记录。
  • 阅读/收听Udi Dahan(poscasts,lectures,articles等)的任何内容。他在InfoQ上有一些好东西。
  • 等待Greg's book
  • 阅读您可以在EDA(事件驱动架构)上找到的任何内容。

祝你好运!

3

除了什么Eric Farr曾表示,它可能是值得的DDD book(战略设计)的第4部分密切关注。它没有从“分布式”角度来解决这个问题,但是有很多关于如何集成应用程序的信息(Bounded Contexts)。在设计应用程序的边界时,像Anticorruption Layer这样的模式会非常有用。