Event-Driven
DistributedArchitecture where components communicate through events
Principles
Asynchronous communicationDecoupled producers and consumersEvent store as source of truthEventual consistency
When to use
Distributed systems, integration between systems, when latency is not critical
When not to use
When you need immediate consistency, simple systems
Pros and Cons
Ventajas
- + High decoupling
- + Independent scalability
- + Auditability (event log)
- + Reactive to changes
Desventajas
- - Eventual consistency
- - Complex debugging
- - Event order can matter
- - Additional infrastructure