Designing Cloud Systems That Accept Temporary Confusion to Handle Massive Load
When thousands of field workers badge into active construction sites at seven in the morning, traditional cloud database designs hit a hard performanc…
Latest Architecture news from Tech News
When thousands of field workers badge into active construction sites at seven in the morning, traditional cloud database designs hit a hard performanc…
Every morning between six and seven, thousands of construction workers check into active jobsites across multiple time zones. In our legacy platform d…
Carnival time has begun. 🎉 We are organizing a house party, and if you are in and around Bangalore, you are invited. Just one condition: Don't be late…
With the Microsoft Agent Framework and its Durable Task extension, durable execution is once again a major topic in the .NET world. The idea is tempti…
The following guide is provided as a public service. If your goal is to maximize chaos, ensure total loss of accountability, and achieve legendary sta…
When people first learn about object storage, replication sounds like the obvious answer. Need durability? Keep three copies. Need higher availability…
It Started With a Disk Usage Alert While going through our monitoring dashboards, I noticed that one of our backup object storage servers had been exp…
Counterexample: a connector grant is revoked at epoch 8, but an import message created under epoch 7 is delayed. The primary store deletes its copy, t…
This is going to be a very different article from what I usually write. No technical discussions, architecture deep dives, or engineering practices to…
Relay A claims outbox row 42 and publishes its message. Before A records completion, its lease expires. Relay B claims row 42 and publishes it again. …
I ran a scraping platform that processed millions of pages a day at roughly 95% extraction success, around three seconds per page. The fetch-and-parse…
In this final article, we're going to explore Production practices 22. Events Are Delivered, Not Guaranteed A common misconception in event-driven arc…
In a message-based system, one of the first questions you have to answer is this: What happens to a message that cannot be processed? The naive answer…
The Hidden Complexity of Moving State in Distributed Systems Why a simple “move” becomes a distributed protocol when source and destination live on di…
A notification badge looks like a small feature. In a distributed application, it can expose a large architectural assumption. I recently investigated…
When a new video shows up in one of our regional crawlers, three things need to happen almost immediately: the SQLite FTS5 search index for that regio…
The Hook: The Mystery of the 200ms Drop in Remote Nodes A few days ago, I was looking at the traffic routing of a distributed microservice network. O…
Abstract Distributed financial systems frequently treat reversal as a secondary state attached to an otherwise completed transaction. A payment succee…
An order reserves inventory, charges payment, then times out waiting for reservation confirmation. Cancellation begins. A late inventory success arriv…
There's a category of engineering problem I find genuinely interesting: systems where the cost of getting consistency wrong is immediate, measurable, …
TL;DR: NAT traversal has historically relied on STUN/TURN/ICE running as an external signalling layer bolted onto whatever transport protocol you choo…
Most Lightning Network tutorials explain what an HTLC is. Almost none explain what happens when one expires. That gap is where real money is lost. Thi…
A data engineering team at a global logistics company submits a query: "Identify all shipments delayed by more than 48 hours in the last quarter, cros…
This is a submission for DEV's Summer Bug Smash: Smash Stories powered by Sentry . If you have built event-driven systems for any length of time, you …
"We're using Kafka with exactly-once semantics, so we don't have to worry about duplicates." I've heard this in architecture reviews, design docs, and…
This is part-2 of the article series on "Building Reliable Event-Driven Systems". In this article, we're going to explore Event Schemas . 5. Designing…
If you are running an event-driven architecture with message queues like Kafka, you already know the drill, scalability is awesome, but network partit…
Changing the model for a running AI task is not a settings update. It is a distributed operation: read current task -> prepare credentials/config -…
I still remember the first time a junior dev I was mentoring asked me, "why did the order service just... hang for 30 seconds and then crash the whole…
New series, same two people from the Node.js Internals series. Where that series answered "how does the system work?", this one answers "how does the …