SOHIL LADHANI
  • Menu ▾
    • About
  • About

Dead Letter Queues

2026-02-06

Making Consumers Idempotent

2026-02-05

Exactly-Once Delivery is a Lie

2026-02-04

Graceful Shutdown: Dying Without Dropping Requests

2026-02-03

Timeouts: The Hardest Easy Problem

2026-02-02

Distributed Locks: When One Process Must Win

2026-02-01

Connection Pooling: Why Opening Connections Is Expensive

2026-01-31

Multi-Level Caching: L1, L2, and Beyond

2026-01-30

Cache Stampede: When Expiry Causes Chaos

2026-01-29

Cache Invalidation: The Hard Problem

2026-01-28

Caching Patterns: Cache-Aside, Write-Through, and Friends

2026-01-27

CRDTs: Data Structures That Never Conflict

2026-01-26

Gossip Protocols: How Rumors Keep Systems Alive

2026-01-25

Vector Clocks and Lamport Timestamps

2026-01-24

The In-Memory Trap: Why Objects Are Slow

2026-01-23

Raft: The Understandable Consensus Algorithm

2026-01-22

The CAP Theorem: The Cliché I Tried to Avoid

2026-01-21

Distributed Tracing: Finding the Needle in the Haystack

2026-01-20

Transactional Outbox: Solving the Dual Write Problem

2026-01-19

Materialized Views: The Read Optimization Pattern

2026-01-18

Saga Pattern: Managing Distributed Transactions

2026-01-17

Event Sourcing: Events as Source of Truth

2026-01-16

CQRS: Separating Reads from Writes

2026-01-15

Change Data Capture: Streaming Database Changes

2026-01-14

Two Generals Problem: Why Consensus is Impossible

2026-01-13

Database Sharding: Splitting Data Across Machines

2026-01-12

Rate Limiting: Token Bucket vs Leaky Bucket

2026-01-11

Backpressure: When Consumers Can’t Keep Up

2026-01-10

Retry Strategies: Exponential Backoff and Jitter

2026-01-09

Idempotency: Why Retries Need It

2026-01-08
< [Newer posts] :: [Older posts] >
© 2026 by SOHIL LADHANI