Modern Web servers commonly employ the thread pool architecture so that their I/O-intensive workload can benefit from the performance improvements offered by multithreading. For acceptable service performance, however, the various configuration options and design choices embodied in the thread pool architecture need to be selected appropriately considering the service and workload characteristics. To enable cost-effective and informed selection of configuration options, this paper presents a quantitative methodology to analyze the performance of a Web server which embodies the thread pool architecture. The key aspect of the methodology is a queuing network model which represents the operational mechanisms of the Web server and the dynamic thread pool management policy. The model is implemented using the AnyLogic simulation environment. We demonstrate the utility of the methodology for performance estimation and sensitivity analysis using several examples.
展开▼