Growing without degrading.
WHAT DEGRADES FIRST
The database, almost always.
WHAT CAUSES IT
Queries without indexes Queries that fetch far more than needed A query per item in a loop Reports run against production
WHAT TO MEASURE
Slow queries, continuously.
WHAT TO FIX FIRST
Whatever is slowest and most frequent.
WHAT TO ADD AS DATA GROWS
Indexes matching actual query patterns Pagination everywhere Caching of what is expensive and rarely changes
WHY PAGINATION EVERYWHERE
A list that works with fifty rows fails with fifty thousand, and some customer will have fifty thousand.
WHAT TO TEST WITH
Data volumes matching your largest customer, multiplied.
WHAT BACKGROUND PROCESSING PROVIDES
Slow work removed from the request.
WHAT TO MOVE THERE
Report generation Imports and exports Sending messages Anything taking more than a moment
WHAT TO WATCH
Queue depth, which reveals capacity problems before users do.
WHAT NOISY NEIGHBOUR MEANS
One customer's usage degrading the service for everyone.
WHAT PREVENTS IT
Limits per tenant Separate queues for heavy work Isolation of expensive operations
WHAT TO AVOID
Optimising before measuring Scaling infrastructure to conceal inefficiency
WHY THAT SECOND POINT
It converts a code problem into a permanent cost.