Video: The 4 meanings of event-driven architecture - Martin Fowler
The many meanings of event-driven architecture - Martin Fowler
4 patterns under the name of 'Event Driven'
1) Event Notification

+ reverse coupling
+ first class
+ flexibility of adding
- no overview in code
events vs commands
command: response, I want this to happen
2) Event-carried State Transfer

+ decoupling
+ availability
no more calls
no dependency
less calls
reduce load
- send all needed data
- copying of data
- eventual consistency
3) Event Sourcing
cf git
cf accounting
events + snapshots

alternative state: tweak event on branch, diff state, apply diff
memory image: in memory state, no db
asynchrony is not required
4) CQRS
Article which inspired this talk