Forum archive 2000-2006

John Jones - How many users can your server handle?

John Jones - How many users can your server handle?

by Arnold Pizer -
Number of replies: 0
inactiveTopicHow many users can your server handle? topic started 9/10/2003; 3:19:12 PM
last post 9/18/2003; 8:40:12 PM
userJohn Jones - How many users can your server handle?  blueArrow
9/10/2003; 3:19:12 PM (reads: 1799, responses: 5)
Last night our WW server was brought to a crawl, with a load average over 100 and 300+ processes running. The processes were clearly piling up as they were unable to complete (so we were not getting 100 hits at once). Looking at the list of active users of all courses, there were a little over 500 of them.

How many users do other people's servers handle at a time?

John

<| Post or View Comments |>


userThomas R. Shemanske - Re: How many users can your server handle?  blueArrow
9/10/2003; 7:22:04 PM (reads: 2049, responses: 0)
John

We had perennial problems like this, but very intermittent

We tried splitting courses off onto a separate server, but to no avail.  On the other hand, the problems were always from one course.

Finally last year, we pulled all the stops, had network services monitoring and monitored timing logs minute by minute.

In the end the culprit was a couple of *very* badly written pg-problems.  One in particular, created a piecewise-linear graph with about 1000 pieces which was going into a 300x300 pixel image!

With no load, it would take about 15 seconds to load.

My best guess is that the server is up to the task, but that you have a computationally intensive problem which was running last night. 

At the very least, I would give this a careful look.

BTW, we got a new dual 3GHz processor Dell out of that snafu :-)

Cheers,

Tom

<| Post or View Comments |>


userJohn Jones - Re: How many users can your server handle?  blueArrow
9/11/2003; 11:48:03 PM (reads: 2055, responses: 0)
I haven't found a particularly bad problem yet.  I had the default for on-the-fly graphs up to 400x400, and we do have lots of graphs.  So, in a way you may be right.  I cut it back to the default 200x200 and split our group two two computers.  Today the load is negligable.  It is much better than simply being cut in half (because of the two servers), so the graphics are probably part of the situation.

Along the way, I made command line scripts to get the number of current logins in a course, and one to total over many courses.  If people are interested, I'll post them.

I don't recall seeing a precreateOnTheFlyGraphics routine.  Is there one?  It may prove useful.

John

By the way Tom, who do I contact about getting a new dual 3GHz computer?

<| Post or View Comments |>


userArnold K. Pizer - Re: How many users can your server handle?  blueArrow
9/18/2003; 4:28:16 PM (reads: 2021, responses: 0)

Hi John,

If you are experiencing high loads, you should probably edit (or at least look at) Apache's httpd.conf file.  The most important item is the MaxClients  directive.  Below is how our server at Rochester is configured.  Actually this is the configuration from when we had a slower server but it works very well so we haven't changed it.  Note that MaxClients is set to 25 so that Apache will only handle 25 requests simultaneously (and queue any others -see below).  Apache's default is 256 which is too high for WeBWorK unless you have an extremely fast machine. With our setting of 25, we are able to easily serve over a 1000 students with the largest course being around 300 and we no longer try to spread out when assignments are due (maybe some people still do this by habit).  We could probably set MaxClients higher but there seems to be no point in doing this. Quickly eyeballing the timing logs, about half the entries show 0 wallclock secs and about half 1 wallclock secs. I didn't see any higher but I didn't search (this is the first time I even looked at the timing log this semester).

KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 10
MinSpareServers 10
MaxSpareServers 25
StartServers 10
MaxClients 25
MaxRequestsPerChild 30

Arnie

From the Apache Documentation:

MaxClients directive 

Syntax: MaxClients number
Default: MaxClients 256
Context: server config
Status: core

The MaxClients directive sets the limit on the number of simultaneous requests that can be supported; not more than this number of child server processes will be created. To configure more than 256 clients, you must edit the HARD_SERVER_LIMIT entry in httpd.h and recompile.

Any connection attempts over the MaxClients limit will normally be queued, up to a number based on the ListenBacklog directive. Once a child process is freed at the end of a different request, the connection will then be serviced.

<| Post or View Comments |>


userJohn Jones - Re: How many users can your server handle?  blueArrow
9/18/2003; 6:33:50 PM (reads: 1984, responses: 0)
Thanks Arnie,

Our server was set at 150 - not as big as the default, but not as small as yours.  I will lower it some in the hopes that it will work better.

Two days ago I discovered that the server was simply slower than expected.  Our systems people tell me it is a hardware problem (along the lines of - one of the cpus is not working).  Still, advice is welcome since we want to avoid overloads in the future.  Our students don't seem to have much patience for technical problems, as this discussion list may have noticed.

John

<| Post or View Comments |>


userArnold K. Pizer - Re: How many users can your server handle?  blueArrow
9/18/2003; 8:40:12 PM (reads: 1992, responses: 0)

Hi John,

This is mostly a comment for others.  Experience has shown that having a dual processor machine makes a tremendous difference.  See e.g. http://webhost.math.rochester.edu/webworkdocs/discuss/msgReader$1572#1574

With a single processor machine, it becomes much more critical to have MaxClients set to a value that the machine can easily handle.

Last year we had a bad processor and/or motherboard in one of our old dual processor servers.  Since we only had a few days left on our service contract, Dell decided to just ship us both a processor and mother board.  Hope you make out as well as we did.

Arnie

 

 

<| Post or View Comments |>