JM Threads

Splitting Virtual Users across Injectors

I'll start getting into some coding details now. This part is straight forward as I'm not using quite a large part of the original solution: splitting up threads automatically across injectors. The original solution allows you to specify a number of threads in your jmeter script which will be split evenly across injectors for you. This sounds good but I'll show you why it doesn't work for me.

Here is a snippet of the controller code:


The problem comes when you have several thread blocks in your script, with initialisation and shared data setup by bespoke threads. In the example script I have included, we have an initialisation thread that reads the injector id for example and a data thread that reads a csv file into memory. The data file is then used by all users in the main block:



With the setup above, splitting up threads across injectors gets confused - in practice I found it trying to give me extra users as it couldn't split 1 user from the initialise thread across 3 injectors for example.

Also, the way I intend to work with these jmeter scripts is to test them on the target injectors to see how many users I can run per injector. This is highly dependent on the script itself - how many objects it uses etc. So once I have established the limits of users per injector, I can then leave that and increase users by increasing injectors. I feel happier myself having this more direct control on users per injector.

So I've effectively commented out the threads section of the controller. This can easily be reset if it fits your needs:


[Home] [About (CV)] [Contact Us] [JMeter Cloud] [JM Highlights] [JM Overview] [JM Control] [JM Inject] [JM Threads] [JM Results] [JM Assertions] [JM TPS] [JM Metrics] [JM Runtime] [JM Collation] [JM Logs] [JM 95th] [JM 95th v2] [JM Jenkins] [JM Corporate] [JM Scripts] [JM Variables] [JM Embedded] [JM Hosts] [JM Running] [JM Example] [JM Versions] [webPageTest] [_64 images] [asset moniitor] [Linux Monitor] [Splunk ETL] [Splunk API] [AWS bash] [LR Rules OK] [LR Slave] [LR CI Graphs] [LoadRunner CI] [LR CI Variables] [LR Bamboo] [LR Methods] [LR CI BASH] [Bash methods] [Jenkins V2] [Streaming vid] [How fast] [Finding Issues] [Reporting] [Hand over] [VB Scripts] [JMeter tips] [JMeter RAW] [Dynatrace] [Documents] [FAQ] [Legal]

In the Cartesian Elements Ltd group of companies