Horizontal scalability refers to the ability to spread a workload over multiple servers, rather than increasing the capacity of a single server. This results in the ability to utilize more, less expensive pieces of hardware, rather than endlessly upgrading a single server at great cost. Think of the Borg from Star Trek, or the concept behind the movie “The Matrix.” When a single part of the collective capacity fails, the system does not fail because the workload can be handled by the other nodes in the system. Thus, the ability to scale horizontally largely eliminates single points of failure. When the unexpected inevitably strikes, the loss of a single server cannot undermine the entire system. Conversely, when the need for excess capacity spikes, then the workload can be spread across multiple servers utilzing load balancing and database sharding/partitioning, mitigating performance loss.
With the advent of cloud-based hosting, the ability to scale out (another term for horizontal scaling) becomes increasingly cost effective. In addition to non-existent cost for additional hardware, cloud server instances can be added “on-demand,” and often only paid for when a spike in capacity occurs, eliminating the cost of excessive amounts of hardware capacity. Cloud server instances, furthermore, have become increasingly simple to spin up uniformly, via software such as Bitlancer Strings, which nearly eliminates the need to configure additional server instances manually. Such automation can spare countless hours of work, which naturally compounds in relation the speed of the increase in traffic.
UPDATE: Bitlancer Strings is now open source. For more information, visit Strings Documentation on Github.