Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I have a problem of load balancing. We developed a web app for nearly 1500 users. As the number of users increased we are unable to serve the requests in a timely manner. It takes around 10 to 20 seconds to load a page. Under heavy load it can take one minute to serve the page.

We need to solve this situation so that each request is served in 2 or 3 seconds.

  • App develped in : asp.net
  • Hosted in : IIS 7.5
  • Machine configuration : Windows Server 2008, 8GB RAM, 1Mbps bandwidth
share|improve this question

migrated from stackoverflow.com Jan 4 '11 at 10:39

This question came from our site for professional and enthusiast programmers.

3 Answers 3

Hmps, seriouisly, you look at the probvlems from the totally wrong side. THere is no need yet to go to multiple servers.

Windows server 2008 8GB RAM 1MBPS band width

Ok, lets ignore the low memory for a moment.

1mbit bandwidth are pathetic. Point. 1500 users in parallel overload the bandwidth. I am sure when checing you will find out that your CPU and Memor and disc are not the problem, but your bandwidth is.

Putting a number of load balanced web servers behind the 1mbit line wont change that.

Upgrading the line means your server can serve more without needing more hardware.

Get proper bandwidth and things are good. 1mbit is really low these days. Actually it ALWAYS was low for a 1500 parallel users server. Never worked. A server today shoul be on a minimum on a 8mbit link, profesionally more on a 34+ mbit link. Hosting servers wont offer you technically less than 100mbit.

If it is a money issue, realize you are totally fixing the wrong thing. YOu need more bandwidth.

Oh, and voted to close - serverfault.com

share|improve this answer

As TomTom said, before scaling out, you need to identify your current bottleneck. The commonest bottlenecks are network bandwidth, RAM, disk performance and CPU. You need to do some more monitoring to find out which of these (or possibly something else) is causing your current performance problem.

share|improve this answer

You really need to do some profiling on this machine to workout where your bottlenecks are. I'd agree with TomTom that your available bandwidth is too low but you also need to be sure you don't have other problems.

With some basic performance monitoring you should be able what issues you're seeing at a hardware level but since this is an internally developed application are you sure you don't have coding issues in there as well? Without knowing the app itself I can only guess but have you optimised your code & your database access, are you caching where appropriate, are you seeing some kind of resource contention or database locking which clearly is more of an issue as the number of users increase etc, etc?

Scalability comes from both a decent hardware setup and a well written application and both aspects need to be considered in parallel.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.