Want to win a PS4? Go Premium and enter to win our High-Tech Treats giveaway. Enter to Win


A Million Client Server

Posted on 2013-02-03
Medium Priority
Last Modified: 2013-02-13
I've managed sites that were hosted on a shared server, but now I'm launching a site that could conceivably have a million  clients, and I'm wondering the best way to host it.

It seems that I need some kind of a cloud solution, where I can just keep bringing in more servers as the load increases, without changing anything in my software.

Does anyone have any thoughts on this, and perhaps some suggestions for where I should host this? Maybe some books that are best in the field.

I certainly don't want to set up my own server.  The virtual hardware has to keep running, no matter what, and the database can never go away.  I can't worry about my dog pulling out the power cord when I'm not home.

Thanks for any ideas,
Question by:steva
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 2
  • 2
LVL 84

Accepted Solution

Dave Baldwin earned 750 total points
ID: 38850086
A million clients?  How many do you think would be trying to simultaneously access the site?

"without changing anything in my software."  No.

Realistically, you can't start at 1,000,000 clients.  If it were a really busy site, you would be talking 200 or more servers.  And that would fill some data centers.  And at that scale, the software has to change to share the load.

No, you have to start with something that works and let it pay it's way into becoming bigger.  Unless you have a whole lot more money than we thought...

For comparison, Facebook has about 180,000 servers to handle 900,000,000 users and Google has an estimated 2,000,000+ servers.  They have thousands of employees to keep things running and fix the code and make changes.

Author Comment

ID: 38856759
A million clients?  How many do you think would be trying to simultaneously access the site?
I don't know. By  "million" I mean "a really heavy load."   Other people doing what I'm about to do talk about  500,000+ clients.

"without changing anything in my software."  No.
Why should the server delivering my application care what my application does?   I know hosting providers have solutions that let you go to your control panel add CPUs and memory to your server - without changing your application.  It seems that this is, or could be, extended to multiple physical servers, with the load sharing handled automatically between the iron boxes - at the hosting provider.  There should be just one virtual server that grows as you check more boxes on a form.

Realistically, you can't start at 1,000,000 clients.
Of course.  I just want to make sure that I start with a solution that scales easily to a million.

For comparison, Facebook has about 180,000 servers to handle 900,000,000 users and Google has an estimated 2,000,000+ servers.
Interesting numbers.  Thanks
LVL 84

Expert Comment

by:Dave Baldwin
ID: 38857395
As soon as you find that 'automagic' you're looking for, let the rest of us know because it just doesn't work that way for us.
Get free NFR key for Veeam Availability Suite 9.5

Veeam is happy to provide a free NFR license (1 year, 2 sockets) to all certified IT Pros. The license allows for the non-production use of Veeam Availability Suite v9.5 in your home lab, without any feature limitations. It works for both VMware and Hyper-V environments

LVL 17

Assisted Solution

by:Dushan De Silva
Dushan De Silva earned 750 total points
ID: 38857923
- Web traffic and storage will handle from the hosting place.
- HTTP requests/responses will balance from the web server.
- HTTP requests/responses will call application server and load balancing should hadle from the web(php,asp,jsp)  programming level
- Application will call the database and database load balancing should handle via db.

Author Comment

ID: 38860835

So if I understand you, you're saying that it is indeed possible to find a hosting solution that can be scaled up to meet growing load, without me changing my application. Right?

But I know that this doesn't always happen.  I have sites now, for example, that are on a shared server (at Hostway) where something like twenty of us are locked in one server sharing the resources, and the busier the other 19 people get the longer I wait for service (or so it seems).

Could you perhaps recommend a couple of hosting providers that you like, that will scale well as my business grows? I'd like to stay with Apache.

LVL 17

Expert Comment

by:Dushan De Silva
ID: 38861423
No, large loads can not manage only with hosting. As I stated above you should consider application programming level(multi threading), DB level load balancing.

Author Comment

ID: 38863319
Multi threading my application would reduce the time it took to service a single client request.  I don't think I need to do that.  I'm happy with the time a request takes - once it's gets into the server, and as long as there aren't too many request from other web sites taking cycles from the CPU I'm running in.  So if I contract for a dedicated server then no one else is using it and now I'm happy with the service time for a request.  But with heavy loads the queues will grow and the queue time will kill me, i.e., the time each request sits in a queue waiting for service. So what I need is a hosting provider that will bring in another server when my queue exceeds some threshold, say 10.  With no queue longer than this I should be getting good service for all my requests no matter how many are coming in, though I may have a lot of servers.

Isn't this sort of arrangement available?

Featured Post

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

If you've heard about htaccess and it sounds like it does what you want, but you're not sure how it works... well, you're in the right place. Read on. Some Basics #1. It's a file and its filename is .htaccess (yes, with a dot in the front). #…
If your site has a few sections that need to be secure when data is transmitted between the server and local computer, such as a /order/ section for ordering or /customer/ which contains customer data, etc it would of course be recommended to secure…
This course is ideal for IT System Administrators working with VMware vSphere and its associated products in their company infrastructure. This course teaches you how to install and maintain this virtualization technology to store data, prevent vuln…
Have you created a query with information for a calendar? ... and then, abra-cadabra, the calendar is done?! I am going to show you how to make that happen. Visualize your data!  ... really see it To use the code to create a calendar from a q…
Suggested Courses
Course of the Month8 days, 3 hours left to enroll

610 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question