A Conflict-free Replicated Data Type (CRDT) is a data structure that allows multiple computers or systems to update shared data independently and concurrently without requiring coordination. Even if…
Event Driven Architecture (EDA) is a modern software design pattern where systems communicate through events rather than direct calls. Instead of services requesting and waiting for responses, they…
Eventual consistency is a consistency model used in distributed computing systems. It ensures that, given enough time without new updates, all copies of data across different nodes will…
Foreign Function Interfaces (FFIs) let code written in one language call functions or use data structures written in another. In practice, FFIs are the “bridges” that let high-level…
A message broker is middleware that routes, stores, and delivers messages between independent parts of a system (services, apps, devices). Instead of services calling each other directly, they…
The Outbox Pattern is a design pattern commonly used in distributed systems and microservices to ensure reliable message delivery. It addresses the problem of data consistency when a…
Polyglot interop (polyglot interoperability) refers to the ability of different programming languages to work together within the same system or application. Instead of being confined to a single…
A saga is a sequence of local transactions that update multiple services without a global ACID transaction. Each local step commits in its own database and publishes an…
Two-Phase Commit (2PC) is a distributed transaction protocol that ensures all participants in a transaction either commit or abort changes in a coordinated way. It is widely used…
An Application Binary Interface (ABI) defines the low-level, binary-level contract between two pieces of software — typically between a compiled program and the operating system, or between different…
In computer science, the term idempotent describes an operation that produces the same result even if it is executed multiple times. In other words, no matter how many…
Three-Phase Commit (3PC) is a distributed consensus protocol used to ensure that a transaction across multiple nodes in a distributed system is either committed by all participants or…