Operations 10 min read

How to Run a Load Test with 50,000 Concurrent Users Using JMeter and BlazeMeter

This guide details a step‑by‑step process for creating, debugging, and scaling JMeter scripts, performing sandbox tests on BlazeMeter, configuring engine user limits, building clusters, and using master‑slave mode to achieve a 50 k concurrent‑user load test.

Qunar Tech Salon
Qunar Tech Salon
Qunar Tech Salon
How to Run a Load Test with 50,000 Concurrent Users Using JMeter and BlazeMeter

This article, originally from “肉眼品世界”, explains how to conduct a smooth load test with 50,000 concurrent users using JMeter and BlazeMeter.

Step 1: Write Your Script

Obtain the latest JMeter version from the Apache site, install required plugins, and create the test script either by using the BlazeMeter Chrome extension, JMeter’s HTTP(S) Test Script Recorder, or building it manually. Parameterize usernames, passwords, and other dynamic data using CSV files, regular expressions, JSONPath or XPath extractors, and configure default HTTP requests for easier environment switching.

Step 2: Run Local Tests with JMeter

Debug the script with a single thread and one iteration using the View Results Tree, check logs, and verify all scenarios. Once the script works, increase to 10‑20 threads for a short test, remove debug listeners, and ensure no absolute file paths are used.

Step 3: BlazeMeter Sandbox Test

Configure a sandbox test with 300 users, one controller, and a 50‑minute duration. Enable full control of the JMeter engine, whitelist BlazeMeter CIDR ranges, and upload all required files (CSV, JAR, JSON, etc.) without using local paths. Monitor the Waterfall/WebDriver tab and resource usage.

Step 4: Set Users‑per‑Engine with One Controller and One Engine

Determine how many users each engine can handle by running a test with 500 threads for 40‑50 minutes. Adjust thread count based on CPU (≤75 %) and memory (≤85 %) thresholds, reducing by 10 % for safety.

Step 5: Install and Test a Cluster

A cluster consists of one controller and up to 14 engines. Run the test from Step 4 while increasing the number of engines, ensuring neither engines nor the controller exceed the CPU and memory limits, and record the total users and hit rate per cluster.

Step 6: Use Master/Slave Mode to Reach the Target Concurrency

Assuming each engine supports 500 users and each cluster can host 12 engines, achieve 50 k users by creating eight clusters of 12 engines and one cluster of 4 engines (or ten clusters of 10 engines). Duplicate the test, rename slaves, set them to “Slave”, create a master test, and finally run the master‑slave configuration, launching ten tests of 5 k users each.

performanceconcurrencyMaster‑SlaveJMeterload testingblazemeter
Qunar Tech Salon
Written by

Qunar Tech Salon

Qunar Tech Salon is a learning and exchange platform for Qunar engineers and industry peers. We share cutting-edge technology trends and topics, providing a free platform for mid-to-senior technical professionals to exchange and learn.

0 followers
Reader feedback

How this landed with the community

login Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.