Distributed Systems

System Design

You Extracted Microservices Before You Understood the Boundaries

Splitting a system into services makes boundaries expensive to change. Getting them wrong produces a distributed monolith that is harder…

Read More »
System Design

A Queue With No Backpressure Just Delays the Crash

Adding a queue between a fast producer and a slow consumer feels like it solved the throughput mismatch. Without backpressure,…

Read More »
Backend & APIs

An Idempotency Key Is the Difference Between a Retry and a Duplicate Order

When a client retries a request because it timed out, the server cannot tell whether the original request actually succeeded,…

Read More »
System Design

Every Retry Is a Duplicate Waiting to Happen

Networks fail after the request arrives but before the response returns. Without idempotency, your retry logic is a duplicate-charge generator.

Read More »
Backend & APIs

A Job Queue Will Eventually Run the Same Job Twice

At-least-once delivery is the practical guarantee almost every queue actually provides, and a job handler that assumes exactly-once will eventually…

Read More »
Back to top button