Naive request-based solutions result in chatty calls as each service engages with multiple other services to fulfil a request, or in large message payloads as services add all the data required to process a message to each message. Neither scale well.
In 2005, Pat Helland wrote a paper ‘Data on the Inside vs. Data on the Outside’ which answers the question by distinguishing between data a service owns and reference data that it can use. Martin Fowler named the resulting architectural style; Event Driven Collaboration. This style is significant because it shifts the pattern from request to receiver-driven flow control.
YOU MAY ALSO LIKE:
- Event Driven Collaboration (SkillsCast recorded in May 2019)
- Domain Models in Practice with Marco Heimeshoff (Online Course on 9th - 13th August 2021)
- Sociotechnical Domain-Driven Design with Kacper Gunia (Online Course on 23rd - 24th August 2021)
- Software Architecture Gathering Digital 2021 (Online Conference on 13th - 14th October 2021)
- Patterns for a Successful Cloud Native Transformation (SkillsCast recorded in June 2021)
- Managing Commercial Platforms: The Architect’s Emerging Skill (SkillsCast recorded in June 2021)