Scaling Out Your Consumers Can Take Down Your Database
Autoscaling your consumers drains the queue and moves the overload to the database. The database should set the consumer count, not the queue.
Autoscaling your consumers drains the queue and moves the overload to the database. The database should set the consumer count, not the queue.
Queue-Based Load Leveling absorbs spikes. It can't fix an average that is higher than what your consumers can process.
Load shedding is the deliberate act of dropping requests to protect your system under overload. Most .NET teams don't have it.
Part 3 of a REST API design series: pagination, HATEOAS, filtering and search, rate limiting, idempotency keys, and the practices that separate a demo API from a production one.
Part 2 of a REST API design series: naming resources so they don't need a manual, versioning without breaking clients, choosing an auth pattern, and structuring errors.
Part 1 of a REST API design series: what REST actually is, Fielding's six constraints, and the HTTP methods and status codes most APIs get subtly wrong.
Every outbox explanation assumes the broker is what breaks. Here is what actually happens when the database is the thing that goes away.
Rollback is a database primitive. Distributed systems don't have one, and treating compensation as if they did is how workflows quietly break.
Hi! Welcome to my blog
.NET, messaging, and distributed systems - the trade-offs the docs leave out.
Form not loading? Subscribe here.