Scalability: growing a system in different directions
- A scalable distributed system continues to perform effectively as its users and/or resources grow in different directions.
- Usually, a system grows in terms of more data, more processes, more machines, more users.
- Scalability can be measured in terms of size, geography & administrative effort.
- Size scalability is the one most developers think about. It can be in terms of resources and/or users. Adding nodes should not degrade the performance or slow the system down irrespective of resources available.
- Geographical scalability implies that adding nodes is done in a way that takes cognizance of the geographical distance between existing and new nodes. Adding new nodes shouldn’t slow down the amount of time it takes to communicate among the nodes.
- Administrative scalability requires that adding new nodes does not greatly increase overheads on human engineering and management resources or on security concerns.
Full post here, 9 mins read