Running applications and systems that are available to users for consumption is important for architects of any serious application. However, there is another equally important application feature that is one of the top priorities for architects, and this is the scalability of the application.
Imagine a situation in which an application is deployed and obtains great performance and availability with a few users, but both availability and performance degrades as the number of users start begins to increase. There are times when an application under normal load performs well, but degrades in performance with the increase in the number of users. This can happen if there is a sudden increase in the number of users and the environment is not built for such a large number of users.
To accommodate such spikes in the number of users, you might provision the hardware and bandwidth...