Load Test Output
In this tutorial, we will show you how to use Neocortix Cloud Services Scalable Compute to run a distributed LoadTest batch job, using a BlazeMeter Taurus client.
First, please follow the steps in the tutorial Setting Up For Batch Jobs. After completion of the initial setup, you will have a directory with examples,
~/ncsexamples
.
In the subdirectory
~/ncsexamples/batchMode
you will find the runBatchTaurus.py command. This script will create a set of instances running on mobile devices, one instance for each load generator. In the default example provided, we ask for 6 successful instances:
startFrame = 1, endFrame = 6, nWorkers = 10,
By setting
nWorkers = 10
, we slightly over-allocate instances to allow for some fraction to fail.
It will command the instances to install Taurus, and then run Taurus with a short (90 seconds) and simple test script
./taurusWorker/script.js
to send http requests to the target URL (currently
https://loadtest-target.neocortix.com
).
def frameCmd( self, frameNum ): configFileName = 'test.yml' # substitute your own file name here (must be in taurusWorker dir) cmd = 'cd taurusWorker && ~/.local/bin/bzt -o settings.artifacts-dir=~/artifacts_%03d %s' % ( frameNum, configFileName ) return cmd
The output of each instance will be a .csv file
worker_<n>.csv
containing request response timing information for each worker. The master will create several image files
worldMap.png
,
deliveredLoad.png
,
responseTimesByRegion.png
, and then terminate the instances.

Example Command

Simply run
python3 ./runBatchTaurus.py
When the program is done, the output files
worker_<n>.csv
,
worldMap.png
,
deliveredLoad.png
,
responseTimesByRegion.png
, will be put in a directory
./data/taurus_<datestamp>

Running a Longer Ramped Load Test

To run a longer ramped Taurus load test, for 500 seconds with 30 devices, please edit
runBatchTaurus.py
and set
timeLimit = 80*60, instTimeLimit = 14*60, frameTimeLimit = 14*60, endFrame = 30, nWorkers = 54
, and then in the
FrameCmd
please replace
test.yml
with
test_RampLong.yml
, and re-run
python3 ./runBatchTaurus.py
Here are example outputs:
Load Test Output
Load Test Output
Load Test Output