Skip to content

Scalability ​

Scalability refers to the ability of a system, network, or process to handle a growing amount of work or its potential to be enlarged to accommodate that growth. In simpler terms, it’s about how well a system can adapt to increased demands.

Two types:

Difference between Scalability and Elasticity ​

  • Scalability is about the system’s potential to grow and handle more load over time, often requiring manual adjustments.
  • Elasticity is about the system’s ability to dynamically adjust resources in real-time based on current demand, usually automatically.

Example ​

Scalability Example: Imagine Netflix is preparing for a new season of a popular show. They anticipate a significant increase in viewers. To handle this, they add more servers to their infrastructure ahead of time. This ensures that when the new season is released, the system can handle the increased load without crashing. This is an example of scalability—preparing the system to handle more users by adding resources.

Elasticity Example: Now, imagine it’s a regular day, and the number of viewers fluctuates throughout the day. During peak hours, more people are streaming, and during off-peak hours, fewer people are online. Netflix’s system automatically adjusts the number of active servers based on the current demand. When more viewers log in, additional servers are automatically provisioned. When the demand decreases, the extra servers are de-provisioned. This is an example of elasticity—the system dynamically adjusts resources in real-time based on current demand.

  • Scalability: Adding more servers in anticipation of a high-demand event.
  • Elasticity: Automatically adjusting the number of servers in real-time based on fluctuating demand.