PoolRunner: An Extensible Performance Testing Simulation Tool for Thread-Pool Middleware

Thread Pool System (TPS) is the most dominant concurrency control middleware service that boosts the scalability and performance of multithreaded servers. However, the performance evaluation of TPS is problematic. The performance of a TPS is tested at the end of the project by the load testing of the multithreaded server (in which the TPS is embedded) in a testbed environment. The TPS cannot be assessed alone early in the SDLC at the design time of the multithreaded server. This lacks the notion of early performance testing. Furthermore, the testbed construction and configurations are complex, difficult, time-consuming, and expensive, especially for researchers. Setting up the lab, learning testbed configurations, embedding TPS in an open-source multithreaded application (e.g. a web server or an application server), selection of load testing tool, and getting expertise to use the tool; all these are added costs for a researcher. Moreover, the load testing tools in the testbed environment cannot assess the internal performance metrics of TPS because the tool communicates only with the multithreaded server at the application layer. Thus, in this paper, we present the PoolRunner, a client-server-based extensible performance testing simulation tool for TPS, developed in JAVA. The PoolRunner is required not only by the practitioners in the industry in early performance testing when architectural choices are made for multithreaded servers, but also by researchers in the academia to assess and compare the performance of their new TPS with existing state-of-the-art TPSs. To the best of our knowledge, there is currently no publicly available simulation tool specifically designed for the early-stage performance evaluation of TPS. Our work contributes by developing a TPS-based performance testing simulation tool and by providing an extendible framework within the tool that enables researchers to embed and compare their custom TPS implementations with existing ones. As an example, we have embedded in the PoolRunner a state-of-the-art TPS of Oracle corporation as a baseline, as well as a static TPS for learning and validity. A detailed experimental evaluation of PoolRunner validates the correctness, robustness and high performance of PoolRunner.

Authors

Institutions

Publication Details

Journal
IEEE Access
Published
2025-01-01
DOI
https://doi.org/10.1109/access.2025.3575437
Citations
1
Primary Topic
Software System Performance and Reliability
Type
article
Field-Weighted Citation Impact
1.49

Funders

Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

PoolRunner: An Extensible Performance Testing Simulation Tool for Thread-Pool Middleware

Zulfiqar Ahmad, Faisal Bahadur, Abdulmohsen Algarni
1 citations
IEEE Access
Software System Performance and Reliability
1.49
article

PoolRunner: An Extensible Performance Testing Simulation Tool for Thread-Pool Middleware

Zulfiqar Ahmad, Faisal Bahadur, Abdulmohsen Algarni
article en
1 citations

Abstract

Thread Pool System (TPS) is the most dominant concurrency control middleware service that boosts the scalability and performance of multithreaded servers. However, the performance evaluation of TPS is problematic. The performance of a TPS is tested at the end of the project by the load testing of the multithreaded server (in which the TPS is embedded) in a testbed environment. The TPS cannot be assessed alone early in the SDLC at the design time of the multithreaded server. This lacks the notion of early performance testing. Furthermore, the testbed construction and configurations are complex, difficult, time-consuming, and expensive, especially for researchers. Setting up the lab, learning testbed configurations, embedding TPS in an open-source multithreaded application (e.g. a web server or an application server), selection of load testing tool, and getting expertise to use the tool; all these are added costs for a researcher. Moreover, the load testing tools in the testbed environment cannot assess the internal performance metrics of TPS because the tool communicates only with the multithreaded server at the application layer. Thus, in this paper, we present the PoolRunner, a client-server-based extensible performance testing simulation tool for TPS, developed in JAVA. The PoolRunner is required not only by the practitioners in the industry in early performance testing when architectural choices are made for multithreaded servers, but also by researchers in the academia to assess and compare the performance of their new TPS with existing state-of-the-art TPSs. To the best of our knowledge, there is currently no publicly available simulation tool specifically designed for the early-stage performance evaluation of TPS. Our work contributes by developing a TPS-based performance testing simulation tool and by providing an extendible framework within the tool that enables researchers to embed and compare their custom TPS implementations with existing ones. As an example, we have embedded in the PoolRunner a state-of-the-art TPS of Oracle corporation as a baseline, as well as a static TPS for learning and validity. A detailed experimental evaluation of PoolRunner validates the correctness, robustness and high performance of PoolRunner.

IEEE AccessVol. 13
Hazara University (PK), King Khalid University (SA)
Deanship of Scientific Research, King Saud University
Openalex Percentile: Top 17%
Software System Performance and Reliability
1.49
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.