Questions tagged [scalability]

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.

Scalability is the capability to increase resources to yield a linear (ideally) increase in service capacity. The key characteristic of a scalable application is that additional load only requires additional resources rather than extensive modification of the application itself.

Although raw performance makes a difference in determining the number of users that an application can support, scalability and performance are two separate entities. In fact, performance efforts can sometimes be opposed to scalability efforts.
/msdn/

A system whose performance improves after adding hardware, proportionally to the capacity added, is said to be a scalable system. An algorithm, design, networking protocol, program, or other system is said to scale, if it is suitably efficient and practical when applied to large situations (e.g. a large input data set or a large number of participating nodes in the case of a distributed system). If the design fails when the quantity increases, it does not scale.
/wikipedia/

Scalability is a general quality that holds when the system continues to satisfy its requirements when various usage parameters are increased.

E.g., a file server might be scalable to a high number of users, or to very large files or very high capacity disks.

Scalability goals:

  • Performance under load
    This is a specific type of scalability goal dealing with the performance of the system at times when it is servicing many requests from many users.
  • Large data volume
    This is a specific type of scalability goal dealing with the ability for the system to handle large data sets. Operations should continue to be correct and efficient as data set size increases. Furthermore, the user interface should still be usable as the data presented to users increases in length.
242 questions
2
votes
2 answers

Enterprise scaling - hardware & server tips

Things change when you are delivering to a large enterprise audience. What are the most important things to think about in relation to your server or server farm when scaling to a very large user base?
1
vote
2 answers

How to theoretically prevent hardware failures in a collection of 10,000 servers?

From a book about warehouse-scale computers: Although it might be theoretically possible to prevent hardware failures in a collection of 10,000 servers, it would surely be extremely expensive. How is it theoretically possible? Hardware failures…
funk-shun
1
vote
1 answer

Tomcat scalability - how many servers

I'm trying to size a tomcat cluster. The key factors will most likely be: The size of clustered in-memory cache we decide to use. So for example, if we wanted to support 100GB in-memory cache, then we might need 50 instances (assuming 2GB max heap…
toolkit
  • 402
1
vote
3 answers

google search engine architecture- how do so many concurrent users do a search on it

With millions of users searching for so many things on google, yahoo and so on. How can the server handle so many concurrent searches? I have no clue as to how they made it so scalable. Any insight into their architecture would be welcomed.
stonebold
0
votes
2 answers

Cherokee Web Server and large files

Is Cherokee Web Server (several servers behind a load balancer) suitable for delivering large files (in the range of 20 - 500 MB) to a big number of clients (several thousands) ?
Cristian