摘要

Modern Web or database servers are usually designed with a thread pool as a major component for servicing. Controlling of such servers, as well as defining adequate resource management policies, with the aim of minimizing requests%26apos; sojourn times presuppose the existence of performance models of thread-pooled systems. In this paper a queuing model of a thread pool is formulated along with a set of underlying assumptions and definitions used. Requests are abstracted in such a way that they are characterized by service time distribution and CPU consumption parameter. The model is defined as a Quasi-Birth-and-Death (QBD) process. Stability conditions for the model are derived and an analytic method based on generating functions for calculation of expected sojourn times is presented. The analytical results thus obtained are evaluated in a developed experimental environment. The environment contains a synthetic workload generator and an instrumented server application based on a standard Java 7 ThreadPoolExecutor thread pool. Sojourn time measurements confirm the theoretical results and also give additional insight into sojourn times related to more realistic workload cases that otherwise would be difficult to analyze formally.

  • 出版日期2013-12

全文