Distributed Domain Related Resources

I am quite confident in the development of DDD applications, but one area that continues to cause problems for me is when two applications integrate with each other. I am struggling to find any useful books or resources on this subject. Books like EAI Templates go deeper into messaging and message building patterns, but don't really explain how to architect systems that use these patterns.

I searched high and low, and I'm sure there are no examples of applications that demonstrate how to integrate the two systems. I understand the concept of asynchronous messaging, but again I can not find good examples of how to apply it.

SOA resources seem to be repeating the same concepts without demonstrating how to implement them, and most often are no longer interested in selling products to me.

Here are the questions I'm trying to answer:

  • If each application has its own copy of the data? For example, should each application within the organization have its own list of clients, which it updates after receiving a message?

  • At what point are messages sent on the DDD stack? Are they the result of domain events?

  • Is it possible to combine asynchrounous messaging and WCF or do I need to choose? Am I using WCF for request / response and messaging for publishing / subscribing?

  • How does one DDD application use the services of another? Should one DDD application request another system for its data through its service applications or if it already has its own local copy of the data, as described in paragraph 1?

  • Apparently, I cannot have a transaction across two systems. How can I avoid this?

If I embarrass it, because I am. I am not looking for answers to the above questions, just pointing in the direction of resources that will answer this question and simple questions.

+4
source share
2 answers

Floor,

I am making a similar transition. My advice:

  • Start at http://cqrsinfo.com/ .
  • Listen to Distributed Podcast .
  • Catch any of Greg Young's conversations. For example, here is Eric Evans talking to Greg. He also held several sessions, which are also being recorded.
  • Read / listen to something from Udi Dahan (jump, lectures, articles, etc.). He got good stuff on InfoQ .
  • Wait for Greg’s book .
  • Read everything you can find in EDA (Event Driven Architecture).

Good luck

+7
source

In addition to what Eric Farr said, it might be worth taking a close look at Part 4 of the DDD book (Strategic Design). It does not approach the problem from the "Distributed" corner, but has a lot of information on how to integrate applications ( Limited contexts ). Patterns such as the Anti-corruption layer can be very useful when designing at the application boundary.

+3
source

All Articles