Skip to content
Hire me
01 / StartXP 0%0/9
Sep 13, 2026 · 1 min · by Ahmed Mamdouh

Watch queue depth trend, not the current number

#monitoring#queues#system-design

The one piece of monitoring I added after an incident and now put in every service on day one is queue depth over time. Not the current number, the trend.

Why the current number lies

Current depth tells you nothing on its own. A large queue that is draining fast is fine. A smaller queue that has grown steadily for an hour is a problem, because consumers are falling behind producers and nothing will fix that by itself.

The slope is the signal

The slope tells you whether you have twenty minutes or two. If depth is rising, divide the remaining headroom by the rate of growth and you have a rough time until it hurts. That is the number that tells you whether to page someone, scale consumers, or just watch.

Takeaways

  • Track queue depth over time in every service from day one.
  • A single depth reading says little; the trend shows if consumers keep up.
  • The rate of growth tells you how much time you have to react.

Building something like this?

I'm Ahmed Mamdouh, a senior full-stack & AI engineer. I reply within one working day.

More notesSep 12, 2026

Scaling 100k WebSocket connections: the reconnect storm

At 100k+ concurrent sockets, the hard part is not the count but the reconnect storm; jittered backoff, load shedding and resumable sessions fix it.

Sep 7, 2026

Splitting a monolith: what it actually bought us

Split a monolith for failure isolation and team ownership, not speed; if it is slow, profile first, since the cause is usually a missing index.

Sep 4, 2026

Caching mistakes I keep debugging

Before adding a cache, measure first, decide what invalidates it, set a TTL, and cache the expensive part rather than the whole result.