Category
microservices
8 articles across 3 sub-topics
Microservices Architecture: Decomposition, Communication, and Trade-offs
TLDR: Microservices let teams deploy and scale services independently — but every service boundary you draw costs you a network hop, a consistency challenge, and an operational burden. The architecture pays off only when your team and traffic scale h...
Service Mesh Pattern: Control Plane, Data Plane, and Zero-Trust Traffic
TLDR: A service mesh intercepts all service-to-service traffic via injected Envoy sidecar proxies, letting a platform team enforce mTLS, retries, timeouts, and circuit breaking centrally — without changing application code. Reach for it when cross-te...
Saga Pattern: Coordinating Distributed Transactions with Compensation
TLDR: A Saga replaces fragile distributed 2PC with a sequence of local transactions, each backed by an explicit compensating transaction. Use orchestration when workflow control needs a single brain; use choreography when services must stay loosely c...
Microservices Data Patterns: Saga, Transactional Outbox, CQRS, and Event Sourcing
TLDR: Microservices get risky when teams distribute writes without defining how business invariants survive network delays, retries, and partial failures. Patterns like transactional outbox, saga, CQRS, and event sourcing exist to make those rules ex...
CQRS Pattern: Separating Write Models from Query Models at Scale
TLDR: CQRS works when read and write workloads diverge, but only with explicit freshness budgets and projection reliability. The hard part is not separating models — it is operating lag, replay, and rollback safely. An e-commerce platform's order se...
Circuit Breaker Pattern: Prevent Cascading Failures in Service Calls
TLDR: Circuit breakers protect callers from repeatedly hitting a failing dependency. They turn slow failure into fast failure, giving the rest of the system room to recover. TLDR: A circuit breaker is useful only if it is paired with good timeouts, l...
System Design HLD Example: API Gateway for Microservices
TLDR: An API Gateway centralizes "cross-cutting concerns" like authentication, rate limiting, and routing at the edge of your infrastructure. The architectural crux is the separation of the Control Plane (managing configurations) from the Data Plane ...
Backend for Frontend (BFF): Tailoring APIs for UI
TLDR: A "one-size-fits-all" API causes bloated mobile payloads and underpowered desktop dashboards. The Backend for Frontend (BFF) pattern solves this by creating a dedicated API server for each client type — the mobile BFF reshapes data for small sc...
