F. Bahadur, M. Naeem, M. Javed, A. Wahab


Competitive multithreading models for constructing server side applications are thread-per-request and thread pool. Thread pool architecture is more efficient because of its pre-spawning and recycling a pool of threads. But tuning the thread pool system at the optimal level and dynamically changing its size is still a challenging task. This paper presents a Thread Pool System which is equipped with a dynamic optimization strategy named Frequency Based Optimization Strategy (FBOS) that reacts on the basis of client’s request frequencies. In this paper we also presented a comparison between the two best pool techniques and FBOS strategy with the help of a Request Simulator and the results of simulation have proved that FBOS is more responsive and efficient than other strategies.

Full Text:



A. Silberschatz, P. Galvin and G. Gane, Operating

System Concepts. 6th Ed. John Wiley & Sons. (New

York, USA) (2003) pp. 180-187. ISBN:

M. Harkema, B. Gijsen, R. Vander and L.

Nieuwenhuis, Performance Comparison of

Middleware Threading Strategies, Proc. of Int.

Symp. Performance Evaluation of Computer and

Communication Systems, Netherland (2004)


Y. Ling, T. Mullen and X. Lin, ACM. SIGOPS

Operating System Review 34, No. 2 (2000) 42.

J. Hu, I. Pyarali and D. Schmidt, Measuring the

Impact of Event Dispatching and Concurrency

Models on Web Server Performance Over Highspeed Networks. Global Telecommunications Conf.

IEEE. (Phoenix, AZ., USA) (1997)

pp. 1924–1931.

S. Ramisetti and R. Wanker, Design of Hierarchical

Thread Pool Executor for DSM. Second Int. Conf.

on Intelligent Systems, Modelling and Simulation.

(Kuala Lumpur) (2011) pp.284-288.

G. You and Y. Zhao, Dynamic Requests

Scheduling Model in Multi-core Web Server. Ninth

Int. Conf. on Grid and Cloud Computing. (Nanjing,

China) (2010) pp.201-206.

C. Ning and P. Lin, A Dynamic Adjustment

Mechanism with Heuristic for Thread Pool in

Middleware. 3rd Int. Joint Conf. on Computational

Science and Optimization. IEEE Computer Society.

(Washington, DC., USA) (2010) pp. 324-336.

J. Lorenzon and E. Clua, A Novel Multithreaded

Rendering System based on a Deferred Approach.

Proc. of VIII Brazilian Symp. on Games and

Digital Entertainment (Rio de Janeiro, Brazil)

(2009) pp. 168-174.

T. Kodaka, S. Sasaki, T. Tokuyoshi and

R. Ohyama, Design and Implementation of

Scalable, Transparent Threads for Multi-Core

Media Processor. Proc. of the Conf. on Design,

Automation and Test in Europe. (Belgium) (2009)

pp. 1035-1039.

M. Nasir, S. Hamid and H. Hassan, Thread-Level

Parallelis m & Shared-Memory Pool Techniques for

Authorization of Credit Card System. International

Symp. on Communications and Information

Technologies. (Lao, China) (2008) pp. 447-452.

D. Kang, S. Han, S. Yoo and S. Park, Prediction

based Dynamic Thread Pool Scheme for Efficient

Resource Usage. Proc. of the IEEE 8th Int. Conf. on

Computer and Information Technology Workshop,

IEEE Computer Society. (Washington, DC., USA)

(2008) pp. 159-164.

D. Xu and B. Bode, Performance Study and

Dynamic Optimization Design for Thread Pool

System. Proc. of the Int. Conf. on Computing

Communications and Control Technologies.

(Austin, Texas, USA) (2004) pp.167-174.

D. Schmidt and F. Kuhns, IEEE Computer

Magazine, Special Issue on Object-Oriented Realtime Computing 33, No. 6 (2000): 56-63.

Y. Ling, Y, T. Mullen and X. Lin, Analysis of

Optimal Thread Pool Size. ACM. SIGOPS

Operating System Review. 34, No. 2 (2000)

D. Schmidt, Communication of the ACM. (New

York, USA) 41, No. 10 (1998) 54.

S. Chang, J. Wang, M. Yuan and D. Liang. Design

and Implementation of Multi-Threaded Object

Int. Conf. on Parallel and Distributed Systems.

(Washington, DC., USA) (1998) pp. 740-747.

Dynamic TAO Documentation, http://choices.

cs.uiuc.edu/2k/dynamicTAO/doc/ (May 2013).

Java API Documentation, http://docs.oracle.

com/javase/7/docs/api/ (May 2013).

T. Ogaswara. Dynamic thread Couint

Adoptation for Multiple Services in SMP

Environment, Int. Conf. on web services, IEEE

Computer Society (Tokyo, Japan) (2008) pp.


JBOSS AZ7.1 Documentation. https://docs.


configuration (May 2013).

Apache Tomcat 6.0. The Executor (thread

pool), http://tomcat.apache.org/tomcat-6.0-

doc/config/executor.html (May 2013).

Sun Java System Application Server 9.1

Administration Guide. Thread pools, http://docs.

oracle.com/cd/E19159-01/819-3671/ (May 2013).

Oracle®Containers for J2EE Configuration and

Administration Guide 10g ( Configuring

OC4J thread pools. http://docs.oracle.com

/html/B32204_05/oc4j.htm (May 2013).

WebLogic Server®Performance and Tuning.

Tune pool sizes, http://docs.oracle.com/cd/

E11035_01/wls100/perform/ (May 2013).

WebSphere®Application Server Network

Deployment, Version 6.1. Thread pool settings.

http://www-01.ibm.com/software/ webservers/

appserv/was/library/ (May 2013.)

Object Management Group, CORBA

Messaging Specification. http://www.omg.

org/spec/ (May 2013).

Object Management Group, Realtime CORBA

Joint Revised Submission http://www.cs.


(May 2013).


  • There are currently no refbacks.