Bound everything!

This is an old unpublished post. Published now.

Bounds are important. Unbounded or only partially bounded resources and operations pose a risk to latency and availability of your service.

  • Bound resource usage (e.g. limit thread pool size)
  • Bound queries (e.g. put a where condition limiting the date range, don’t make it open on one side or worse both sides; if it makes sense use the”limit” features in queries)
  • Bound time spent waiting on a dependency

On a similar vein, ensure you validate user input against limits before working on them or passing them on to dependencies.

View the discussion thread

Originally published at on May 13, 2018.



Aishwar Muthuraman

Adventuring through life. Stories of software development, engineering, fun, and reflection.