Introduction to System Design: What is Scalability?

Scott Cosentino
3 min readJun 19, 2023

Consider an application where the number of users can fluctuate daily. This situation often occurs in web applications and other publicly available products. As the number of users increases, the number of requests and volume of data handled by the application increase. To handle increases in traffic without performance degradation, we need to consider scalability in our system design.

Scalability refers to a system’s ability to cope with load. In this article, we will explore the concepts of load, performance, and the techniques that system designers use for scaling applications.

What Exactly is Load?

Load is generally a concept described with the help of load parameters. Load parameters are metrics describing how much work the system does for each user. These parameters can vary based on the application type. For example, a web application may consider the number of requests received per second as an indicator of application load. If an application relies heavily on data, metrics like read-to-write ratios may give a good picture of the application load.

The consistent factor for each load parameter is the impact the parameter has on performance. Each of these factors will have some impact on the performance of the application. When you look at the factors…

--

--

Scott Cosentino
Scott Cosentino

No responses yet