architecture The Bulkhead Pattern: Why One Slow Dependency Shouldn’t Sink the Whole Ship josedacruz, October 2, 2026October 2, 2026 TL;DR: The bulkhead pattern means giving each dependency — a downstream API, a database, a queue — its own separate pool of resources instead of making everyone share one big pool. That way, when one dependency gets slow or fails, it can only eat its own pool, not every other… Continue Reading
architecture The Cache Stampede: How One Expired Key Can Take Down Your Database josedacruz, September 18, 2026September 18, 2026 TL;DR: A cache stampede happens when a popular cached value expires and a flood of requests all miss the cache at the same instant, sending them straight to your database all at once. It is one of the few bugs that gets worse the more successful your caching strategy is…. Continue Reading
architecture The Dead Letter Queue Pattern: Why Nobody Ever Looks Inside It josedacruz, September 18, 2026September 18, 2026 TL;DR: A dead letter queue (DLQ) is just a holding pen for messages your system tried to process and failed. It’s not a fix by itself — it just moves the failure somewhere quieter. Whether you actually need one depends on how much it costs you to lose a message… Continue Reading
architecture The Outbox Pattern: How to Publish Events Without Losing Them josedacruz, August 12, 2026August 12, 2026 TL;DR: When a service needs to save something to its database and tell other services about it at the same time, doing those two things separately can silently lose data. The outbox pattern fixes this by writing the “I need to send this event” note into the same database transaction… Continue Reading
architecture The Strangler Fig Pattern: How to Replace a Legacy System Without a Big-Bang Rewrite josedacruz, July 30, 2026July 30, 2026 Every few years, a team decides their old system is too messy to keep working with, and someone says the magic words: “Let’s just rewrite it from scratch.” Six months later, the rewrite still isn’t done, the old system still has bugs nobody is fixing because “we’re replacing it soon… Continue Reading