On 22/09/2010 09:09, Adam Heath wrote: > Now, if you were to combine *all* these hosts into one, and then try to > run it, we might have an issue. But, that's not what is currently > happening.
Not sure what you mean here. www.a.o and every tlp.a.o site are served from a single httpd instance (along with a handful of other virtual hosts). Everything we require the cms to handle is currently handled by a single httpd instance. There are actually two machines. One in the EU and one in the US. Normally we use geo-based load balancing but a single machine has to be able to handle all of the traffic comfortably so we can do maintenance on the other. > And, with the 10M number you originally gave, that is 115req/s. If that > is for a single page, then our current software handles that fine. If > that is for 115 different pages at the same time, then I will have to > get back to you, to try that test. I don't have a program that can > request 115 different pages at once. That is across all virtual hosts so they will be different pages. http://www.apache.org/server-status will give you a snapshot of current load. > Also, if the problem is with remote clients tying up a thread/connection > slot, then that is a separate problem from the backend system. The > backend system should have a small thread pool, so that it can run fast, > and then the frontend(either catalina itself, or apache/mod-jk) does the > send using non-blocking-io. The problem is that the systems we have tried before can't handle the load. It sounds like you are using Tomcat under the covers. Whilst you will maximise throughput when the threadpool size is roughly the same as the number of cores on the machine, the overhead of having a few hundred processing threads isn't that great. We would always front Tomcat with httpd so an appropriate mod_proxy/mod_jk/Tomcat connector config can ensure that we don't have to have one Tomcat thread per current connection (since with keep-alive connections >> requests). Mark
