# Causal Consistency in Domain Events
> [!Note]
> Ensuring **temporal order** of [[Domain Events]] across **distributed systems** by leveraging **timestamps** or **sequence numbers** preserves the **causal relationships** and keeps the domain logic intact.`
Causal consistency guarantees that events which are related by cause and effect are observed in the same order by every component in the system. In a **distributed environment**, where multiple nodes process events asynchronously, this principle prevents anomalies by ensuring that if **Event A** causes **Event B**, all subscribers will see **A** before **B**. Achieving this relies on precise **sequencing** mechanisms—such as wall-clock **timestamps** or monotonically increasing **sequence numbers**—to order events reliably and uphold the integrity of the business processes they represent.
---
## References
- Vernon, V. (2016). _Domain-driven design distilled_. Addison-Wesley Professional.
- Vernon, V. (2013). _Implementing domain-driven design_. Addison-Wesley Professional.
- Khononov, V. (2021). _Learning domain-driven design: Aligning software architecture and business strategy_. O’Reilly Media.
- Alammar, J., & Grootendorst, M. (2024). _Hands-on large language models: Language understanding and generation_. O’Reilly Media.
- Evans, E. (2003). _Domain-driven design: Tackling complexity in the heart of software_. Addison-Wesley Professional.
- Millett, S., & Tune, N. (2015). _Patterns, principles, and practices of domain-driven design._ Wrox.