Scalability is the ability of a system, network, or process, to handle growing amounts of work in a graceful manner, or its ability to be enlarged to accommodate that growth. A scalable system can adopt to a growing demand (e.g. a growing number of users).
A scalable system requires little hardware resources, if there are only a few users. But if the game gets popular, it will be easily adapted to run on huge server farms.
This requires that the game is coded in a way which allows for load balancing. A common approach is to identify services such as (chat, friends list, authentication, world, map) that can be split onto different servers.
More sophisticated approaches allow for seamless load balancing within one type of service such as a continuous world.
- Scalability on GameDevelopment
- Scalability on StackOverflow for general software development
- Scalability on ServerFault for hardware and operation
If a system is scaled up, it will get more likely that things break, both at the software and hardware level. Therefore fault isolation and high availability (serverfault) are important topics.