Questions tagged [scalability]

Scalability is the ability of a system, network, or process, to handle growing amount of work in a capable 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.
2320 questions
1
vote
1 answer

node.js staggering keep alives to large amount of tcp clients

I'm trying to send keep alives from a server to a bunch of tcp clients. To reduce the server load on the responses, I want to spread the keep alives apart. If I have 3000 tcp clients, and 60s keep alive interval, I need to stagger keep alive…
nflacco
  • 4,972
  • 8
  • 45
  • 78
1
vote
1 answer

Sphinx Scalability

I currently use Sphinx Search for optimizing our search page. The popularity of the website is growing which causes more load on Sphinx. Although there is nothing to be worried about at this point I am wondering in how Sphinx is scalable. I have…
gt-info
  • 139
  • 2
  • 12
1
vote
1 answer

Websockets - passing-off open connection to another server?

Situation: Two web servers, and a browser client. The client has an open websockets connection with Server A. Server A decides that this client should really be serviced by Server B. I would like to know if there is any established technique for…
UpTheCreek
  • 31,444
  • 34
  • 152
  • 221
1
vote
1 answer

Memcache : Confusions

I am going to use memcache(not memcacheD) for my PHP application . I have few confusions . I found this wrapper class for memcache. 1)As on connect method it adds all servers to pull. If this is done on every single request wont it slow down the…
Pit Digger
  • 9,618
  • 23
  • 78
  • 122
1
vote
0 answers

css display:table-cell not scaling in fluid layout

I'm learning about fluid layouts and have been puzzled by a scaling issue in my code. I'm using a floatless fluid layout in which div-parent dimensions are formed by height:pixel,width:percentage, & the children are defined by percentages. For a…
Betsy
  • 11
  • 1
1
vote
2 answers

Fetching few sorted records from huge table

Let's pretend I have a huge website and a huge table (with some million entries table) with a few columns ("ID", "AuthorID", "Message", "Time" for example) to contain twitter-like messages. I want to execute the following simple query: SELECT * FROM…
Francesco Boffa
  • 1,402
  • 1
  • 19
  • 35
1
vote
1 answer

Single Page Application Server Separation of Concern

Im just in the process of putting together the base framework for a multi-tenant enterprise system. The client-side will be a asp.net mvc webpage talking to the database through the asp.net web api through ajax. My question really resides around…
Matt
  • 3,305
  • 11
  • 54
  • 98
1
vote
3 answers

If threads are getting 3000 posts each is it maybe better to make a new table per thread?

There's 12 million posts already and people seem to be using things as a chat. I don't know if it's more efficient to have a bunch of little tables than having the database scan for the last 10 messages in a database with so many entries. I know I'd…
ForeverConfused
  • 1,607
  • 3
  • 26
  • 41
1
vote
2 answers

Comment post scalability: Top n per user, 1 update, heavy read

Here's the situation. Multi-million user website. Each user's page has a message section. Anyone can visit a user's page, where they can leave a message or view the last 100 messages. Messages are short pieces of txt with some extra meta-data.…
Dave Chang
1
vote
1 answer

Implementing a real time counter using spring and either hibernate or AtomicInteger, best way?

Use an atomic integer as an intance evariable within service classes that are injected into controllers. Scaling is limited by memory required for each thread to run operation, and how many requests are processed per second (cpu speend and time to…
NimChimpsky
  • 46,453
  • 60
  • 198
  • 311
1
vote
1 answer

How do I throttle worker roles per job/tenant working against a queue in Azure

I have a multi-tenant azure application where they may be many different jobs queued up. Each job consists of many individual tasks which are stored in a queue. For both both user reasons, and technical reasons, a particular job should not consume…
Jason Coyne
  • 6,509
  • 8
  • 40
  • 70
1
vote
1 answer

Synchronize service states between application servers

Suppose we have N identical windows services (developed in C#/.NET) running at same time on N application servers. 'Unfortunately', every service has its own in-memory states (say, "at 10:00 PM I need to execute a job"). Through a frontend web UI…
Felix Wang
  • 11
  • 3
1
vote
8 answers

Using a remote, external web service instead of a database

I am building an ASP.NET web application that will be deployed to a 4-node web farm. My web application's farm is located in California. Instead of a database for back-end data, I plan to use a set of web services served from a data center in New…
frankadelic
  • 20,543
  • 37
  • 111
  • 164
1
vote
1 answer

Configuring Web Apps for Distributed Database

I have read MongoDB's replication docs and MySQL's Cluster page however I cannot figure out how to configure my web apps to connect to database. My apps will have connection information, database host, username, password etc, however, even if there…
Mustafa
  • 10,013
  • 10
  • 70
  • 116
1
vote
1 answer

How To Make A Horizontally Scalable Git Solution

So I've successfully set up my own git server. A little background on it is: Server: Ubuntu Git Serice: Gitolite Web Interface : GitWeb Now a bunch of projects are going to be added to this server, my 10gig instance will easily be used up. My…
Devin Dixon
  • 11,553
  • 24
  • 86
  • 167
1 2 3
99
100