Tag
system-design
6 articles tagged with “system-design”
Caching in 2026: Cache-Aside, HybridCache, and the Four Failure Modes
Cache-aside vs write-through, .NET 9 HybridCache (L1+L2 with stampede protection), TTL design with jitter, and the four ways caches actually fail in production.
Sharding: Picking a Key You Won't Regret in Two Years
Hash vs range vs directory sharding, the shard-key checklist, consistent hashing in C#, dual-write resharding, and when managed Cosmos DB / SQL Hyperscale beats DIY.
Load Balancing: L4 vs L7, P2C, and Health Checks That Actually Catch Failures
Algorithm matrix (round-robin, least-conn, EWMA, P2C, consistent hash), .NET 9 health checks, outlier ejection, the Azure LB service map, and Polly v8 resilience.
Rate Limiting: Token Bucket, Sliding Window, and Distributed Counters
ASP.NET Core RateLimiter, Redis-backed sliding-window in Lua, picking the right partition key, tiering by endpoint cost, and the 429 + Retry-After contract.
Message Queues: Delivery Semantics, Idempotency, and the Outbox Pattern
Queue vs stream vs topic, why exactly-once is marketing, peek-lock + explicit complete, idempotency tables, the transactional outbox, and Service Bus sessions for FIFO.
Consistency Models: From Strong to Eventual (and What CAP Doesn't Tell You)
Linearizable, causal, bounded staleness, session, eventual — what each one buys you, Cosmos DB's 5 levels, SQL isolation, read-your-writes, and sagas instead of 2PC.

