The Story Behind Distributed Transactions: Choreography vs. Orchestration

Microservices architectures promise flexibility, scalability, and agility in software development. But with this flexibility comes significant complexity—especially when managing transactions across multiple, distributed services. Today, let’s talk about the history of distributed transactions, diving deep into two powerful yet contrasting approaches: Choreography and Orchestration. Why Distributed Transactions? In the beginning, monolithic applications reigned supreme. Transactions were straightforward—everything operated within a single database, making transaction management relatively easy. But as software applications grew in scale and complexity, a single database was no longer sufficient....

April 14, 2025 · 5 min · Kia Raad

Understanding Events, Messages, and Commands in Distributed Systems

TL;DR Embark on a narrative journey through distributed systems to uncover the subtle differences between messages, commands, and events. Discover how these concepts weave into the fabric of microservices architecture, illustrated through a real-world e-commerce story. Learn to make strategic decisions for your projects without getting lost in technical issues. Introduction Imagine a robust marketplace where merchants, couriers, and town criers all play pivotal roles in keeping the economy alive. In this scenario, communication is key....

December 1, 2024 · 7 min · Kia Raad