LoadGuard-JMeter: An SLO-Aware Closed-Loop Elastic Load Generation Plugin for Apache JMeter
Keywords:
Apache JMeter, SLO-Aware Load Testing, Closed-Loop Feedback Control, Elastic Load Generation, Microservice Performance TestingAbstract
A challenge in performance testing web, API, cloud-based, and microservice systems is selecting a workload level that can expose meaningful behavior without overloading the target system. Apache JMeter provides several mechanisms for generating and controlling load. However, in most JMeter tests, the workload profile is configured before execution and remains largely fixed during the run. This makes SLO-aware testing difficult when the safe operating range is not known in advance. This paper presents LoadGuard-JMeter, an SLO-aware closed-loop load-generation plugin for Apache JMeter to dynamically control the workload according to runtime SLO conditions. The plugin combines an Elastic Timer, Metrics Listener, SLO Feedback Controller and Decision Log Writer to dynamically adjust request pacing based on p95 response-time and error-rate SLOs. When the system is within the safe zone, the request rate is increased; when it approaches the SLO, the rate remains constant; and when a breach occurs, the rate is decreased. The controller’s decisions are recorded in a separate CSV file. The system was tested using the TeaStore microservice benchmark under an 800 RPS stress load. The evaluation included five independent experimental runs for each scheme. Based on the five-run mean results, LoadGuard-JMeter improved the average response time by 96.54% and 95.37%, p95 latency by 94.70% and 95.62%, and p99 latency by 94.32% and 95.87%, compared to FFA and TSTCTG respectively. It also reduced the mean p95 SLO-violation rate from 100% for both baselines to 22% and maintained an error rate of 0%. The controller executed INCREASE, HOLD and DECREASE commands during runtime, demonstrating workload adaptability. These results were achieved at a lower mean successful throughput of 88.15 requests/s, compared to 741.20 requests/s for FFA and 154.10 requests/s for TSTCTG, showing that LoadGuard-JMeter maintains SLO stability by regulating the workload rather than maximizing throughput. The lower response times and fewer SLO violations were therefore achieved by reducing the applied workload, rather than improving response times at the same throughput.
References
S. Di Meglio, L. L. L. Starace, and S. Di Martino, “Web app performance testing in industrial contexts: Supporting workload generation with E2E-Loader++,” J. Syst. Softw., vol. 232, p. 112684, Feb. 2026, doi: 10.1016/J.JSS.2025.112684.
A. Marchese and O. Tomarchio, “SLO-Aware Container Orchestration on Kubernetes Clusters,” IEEE Int. Conf. Cloud Comput. CLOUD, pp. 318–327, 2025, doi: 10.1109/CLOUD67622.2025.00040.
M. Bolanowski, M. Ćmil, and A. Starzec, “New Model for Defining and Implementing Performance Tests,” Futur. Internet 2024, Vol. 16, Page 366, vol. 16, no. 10, p. 366, Oct. 2024, doi: 10.3390/FI16100366.
“Apache JMeter - Apache JMeterTM.” Accessed: Nov. 04, 2026. [Online]. Available: https://jmeter.apache.org/
E. Mabotha, N. E. Mabunda, and A. Ali, “Performance Evaluation of a Dynamic RESTful API Using FastAPI, Docker and Nginx,” IEEE Glob. Energy Conf. 2024, GEC 2024, pp. 174–181, 2024, doi: 10.1109/GEC61857.2024.10881712.
M. Pinyagin and A. Sadovykh, “Automating Performance Testing in CI/CD - Tools Evaluation,” Lect. Notes Comput. Sci., vol. 16107 LNCS, pp. 195–209, 2026, doi: 10.1007/978-3-032-05188-2_13.
L. Liao et al., “Using black-box performance models to detect performance regressions under varying workloads: an empirical study,” Empir. Softw. Eng., vol. 25, no. 5, pp. 4130–4160, Sep. 2020, doi: 10.1007/S10664-020-09866-Z;JOURNAL:JOURNAL:KLU-EMSE;PAGE:STRING:ARTICLE/CHAPTER.
N. Husufa and I. Prihandi, “Optimizing JMeter on Performance Testing Using the Bulk Data Method,” J. Inf. Syst. Informatics, vol. 4, no. 2, pp. 205–215, Jun. 2022, doi: 10.51519/JOURNALISI.V4I2.244.
J. Castro, N. Laranjeiro, and M. Vieira, “Detecting DoS Attacks in Microservice Applications: Approach and Case Study,” ACM Int. Conf. Proceeding Ser., pp. 73–78, Nov. 2022, doi: 10.1145/3569902.3569916;GROUPTOPIC:TOPIC:ACM-PUBTYPE.
H. Schulz, D. Okanovic, A. Van Hoorn, and P. TÅma, “Context-Tailored Workload Model Generation for Continuous Representative Load Testing,” ICPE 2021 - Proc. ACM/SPEC Int. Conf. Perform. Eng., pp. 21–32, Apr. 2021, doi: 10.1145/3427921.3450240;WGROUP:STRING:ACM.
“Free-Form Arrivals Thread Group :: JMeter-Plugins.org.” Accessed: Nov. 04, 2026. [Online]. Available: https://jmeter-plugins.org/wiki/FreeFormArrivalsThreadGroup/
“Throughput Shaping Timer :: JMeter-Plugins.org.” Accessed: Nov. 04, 2026. [Online]. Available: https://jmeter-plugins.org/wiki/ThroughputShapingTimer/
“Concurrency Thread Group :: JMeter-Plugins.org.” Accessed: Nov. 04, 2026. [Online]. Available: https://jmeter-plugins.org/wiki/ConcurrencyThreadGroup/
V. Ayala-Rivera, M. Kaczmarski, J. Murphy, A. Darisa, and A. O. Portillo-Dominguez, “One size does not fit all: In-test workload adaptation for performance testing of enterprise applications,” ICPE 2018 - Proc. 2018 ACM/SPEC Int. Conf. Perform. Eng., vol. 2018-March, pp. 211–222, Mar. 2018, doi: 10.1145/3184407.3184418;WGROUP:STRING:ACM.
O. Huerta-Guevara, V. Ayala-Rivera, L. Murphy, and A. O. Portillo-Dominguez, “DYNAMOJM: A JMeter Tool for Performance Testing Using Dynamic Workload Adaptation,” Lect. Notes Comput. Sci. (including Subser. Lect. Notes Artif. Intell. Lect. Notes Bioinformatics), vol. 11812 LNCS, pp. 234–241, 2019, doi: 10.1007/978-3-030-31280-0_14/FIGURES/6.
M. H. Moghadam et al., “Performance Testing Using a Smart Reinforcement Learning-Driven Test Agent,” 2021 IEEE Congr. Evol. Comput. CEC 2021 - Proc., pp. 2385–2394, 2021, doi: 10.1109/CEC45853.2021.9504763.
M. H. Moghadam, M. Saadatmand, M. Borg, M. Bohlin, and B. Lisper, “An Autonomous Performance Testing Framework using Self-Adaptive Fuzzy Reinforcement Learning,” Softw. Qual. J., vol. 30, no. 1, pp. 127–159, Aug. 2019, doi: 10.1007/s11219-020-09532-z.
Y. Sun et al., “PerfScout: An Adaptive Workload Generator in Software Performance Testing,” Proc. - 2026 IEEE/ACM 48th Int. Conf. Softw. Eng. Softw. Eng. Pract. ICSE-SEIP 2026, pp. 520–530, Jul. 2026, doi: 10.1145/3786583.3786893;SUBPAGE:STRING:BASIC.
H. Hanada and K. Ishibashi, “Service-Level Objective-Aware Load-Adaptive Timeout: Balancing Failure Rate and Latency in Microservices Communication,” IEEE Access, vol. 13, pp. 137881–137895, 2025, doi: 10.1109/ACCESS.2025.3596118.
“JMeter MCP Server - Supercharge your JMeter performance testing with AI-driven orchestration and analysis. - TestDevTools.” Accessed: Nov. 04, 2026. [Online]. Available: https://testdev.tools/jmeter-mcp-server/
J. Von Kistowski, S. Eismann, N. Schmitt, A. Bauer, J. Grohmann, and S. Kounev, “TeaStore: A micro-service reference application for benchmarking, modeling and resource management research,” Proc. - 26th IEEE Int. Symp. Model. Anal. Simul. Comput. Telecommun. Syst. MASCOTS 2018, pp. 223–236, Nov. 2018, doi: 10.1109/MASCOTS.2018.00030.
“ConstantThroughputTimer (Apache JMeter dist API).” Accessed: Nov. 04, 2026. [Online]. Available: https://jmeter.apache.org/api/org/apache/jmeter/timers/ConstantThroughputTimer.html
“AutoStop :: JMeter-Plugins.org.” Accessed: Nov. 04, 2026. [Online]. Available: https://jmeter-plugins.org/wiki/AutoStop/
Downloads
Published
How to Cite
Issue
Section
License
Copyright (c) 2026 50sea

This work is licensed under a Creative Commons Attribution 4.0 International License.


















