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.