forked from ringcentral/jagger8
-
Notifications
You must be signed in to change notification settings - Fork 0
Load
Dmitry Latnikov edited this page Aug 29, 2013
·
12 revisions
load is a jagger component that describes how often targets will be under load.
This component has a multiple type choice. Possible types -
-
load-tpsThis type of load imitates an exact number of transactions per second. By using attribute 'value', you can configure a number of transactions. Attribute 'maxThreadNumber' say what is the maximum number of threads Jagger engine is allowed to create, to provide the requested load. By default it equals 4000. You can change this value in [property file](Configuration properties). If attribute 'warmUpTime' is set, load will increase from 0 to the value for this time. Example :
<load xsi:type="load-tps" value="100" maxThreadNumber="1000" warmUpTime="10s"/>
-
load-rpsThis type of load imitates an exact number of requests per second. By using attribute 'value', you can configure a number of requests. Attribute 'maxThreadNumber' say what is the maximum number of threads Jagger engine is allowed to create, to provide the requested load. By default it equals 4000. You can change this value in [property file](Configuration properties). If attribute 'warmUpTime' is set, load will increase from 0 to the value for this time. Example :
<load xsi:type="load-rps" value="100" maxThreadNumber="1000" warmUpTime="10s"/>
-
load-threadsThis type of load provides an exact count of threads and with exact delay (milliseconds) between invokes (by default - 0), which will load your targets. Example :
<load xsi:type="load-threads" count="5" delay="10"/>
-
load-user-groupsThis load is a list of elementsuser. Every such element imitates a group of threads. Threads can start sequentially (during every iteration 'startCount' nodes will start). Thus you are able to create load ramp-up and rump-down with this load type. You can configure a number of threads by attributes.countis a goal number of threads.startInis a delay (milliseconds) before first thread will start.startBy- interval (milliseconds) between starting new thread(s).startCountdescribes how many threads to start during every iteration.lifedescribes how long threads will be alive (string of type "1m" or "1h", etc). Example :
<load xsi:type="load-user-groups">
<user count="45" startCount="45" startIn="0" startBy="0" life="2h"/>
<user count="5" startCount="5" startIn="0" startBy="0" life="2h"/>
</load>
Note: startBy time can't be executed exact, because this interval can be influenced by other processes. It is guaranteed that new thread(s) will start not earlier than this time.
-
load-user-groupThis load imitates one user group. See typeload-user-groups. Example:
<load xsi:type="load-user-group" count="10" startCount="10" startIn="0" startBy="0" life="10m"/>
-
load-invocationThis type of load provides an exact number of invocations. Attributeexactcountsays - how much invocations jagger have to execute, attributethreads- how much threads jagger can use.delayis a time(milliseconds) between invocations. By default it equals 0. Example :
<load xsi:type="load-invocation" exactcount="1000" threads="5" delay="500"/>
Note: when load type load-invocation is applied, it is guaranteed that first query in query list will be invoked. Other queries in the list can be ignored by software!
Example of load component usage -
<test id="jaggerPage" testDescription="jaggerPageTest">
<load xsi:type="load-tps" value="100" maxThreadNumber="1000"/>
<termination xsi:type="termination-iterations" iterations="1000" maxDuration="2h"/>
</test>
To stop load in certain time you need to configure termination