How do Application Servers support multi-threading?
I am looking for information regarding how application servers like Tomcat, Websphere, IIS etc support 开发者_开发技巧multi-threading to handle client requests. Is there a comparative analysis on how each of them support/handle concurrent requests?
Thank you
IIS is using threadpools too. A good reference is the work done by Intel (source code available) to do this on Windows and Linux. Microsoft just did the same thing in the Windows kernel (the very same thing, original defaults included).
One of the problems with this approach (implementation deffects excluded) is the overhead of the (dynamic) threadpool mechanism: it is supposed to grow with the demand but the way it does it defeats the purpose.
For a good comparison of the best available (and proven) models, see:
www.wikivs.com/wiki/G-WAN_vs_Nginx
You can always look at the source for information about Tomcat. As most multi-threaded applications in Java it's built around a threadpool with Workers. Not sure about Websphere but I think it's simular to Tomcats. Can't answer for IIS...
精彩评论