Martin Fowler (ThoughtWorks) outlines the differences, pros and cons of four major Event-Driven approaches:
Points of interest:
- While events are often an effective means of decoupling the receiver from the sender, events typically obscure the system’s actual behaviour which can make it more difficult to reason about.
- Every software developer who has used version control has interacted with an Event Sourcing system.
- If you need to explain Event Sourcing to the business, use accounting ledgers.
- While CQRS can be a powerful approach to addressing certain categories of challenges it is also the one Event-driven style that tends to get projects/people into trouble most often.
I’d rate this a “must watch”.