D
D
Daniil Muidinov2018-03-22 13:20:47
stress testing
Daniil Muidinov, 2018-03-22 13:20:47

How to calculate the resources required for a load testing stand?

Good afternoon!
Questions about creating a stand for a load / stress test of a web portal
Please tell me in which parrots the load is measured, the number of requests per second, something else?
How to calculate how much server resources (CPU, RAM) are needed for creating a load of N parrots on the tested environment.
For testing, it is planned to use JMetr and Yandex tank. It
is planned to start the stands in the cloud, take several nodes and parallelize the load from them

Answer the question

In order to leave comments, you need to log in

1 answer(s)
V
Vyacheslav Smirnov, 2018-10-07
@polarnik

Selection.
And regarding the clouds - it's not so simple with them.
For example, suppose that in the cloud at the selected tariff there is a quota for the duration of disk high availability. And in the first hour of operation, the disk works quickly, and in the second hour and subsequent - it suddenly works slowly.
The only thing you can be sure of is the RAM. She does not swim in the cloud.
And you need to calculate the required amount of RAM from the number of threads that will be executed during the test.
It is necessary to conduct trial tests, monitor how much RAM is needed for the selected load profile. The evaluation method is as follows - if the application did not crash into java.lang.OutOfMemoryError: Java heap space and the response time in JMeter and the post server logs are the same (JMeter does not slow down), then it has enough memory.
What if something like this happens:

$ ./run.sh ./script.01.Thread_Group.jmx --nongui
Creating summariser <summary>
Created the tree successfully using ./script.01.Thread_Group.jmx
Starting the test @ Mon Oct 01 17:21:27 MSK 2018 (1538403687382)
Waiting for possible Shutdown/StopTestNow/Heapdump message on port 4445
summary +     19 in 00:00:02 =    7.7/s Avg:     0 Min:     0 Max:     2 Err:     0 (0.00%) Active: 1 Started: 10 Finished: 9
summary +    256 in 00:00:30 =    8.6/s Avg:     0 Min:     0 Max:    12 Err:     0 (0.00%) Active: 2 Started: 139 Finished: 137
summary =    275 in 00:00:32 =    8.5/s Avg:     0 Min:     0 Max:    12 Err:     0 (0.00%)
summary +    498 in 00:00:30 =   16.6/s Avg:     0 Min:     0 Max:     2 Err:     0 (0.00%) Active: 3 Started: 389 Finished: 386
summary =    773 in 00:01:02 =   12.4/s Avg:     0 Min:     0 Max:    12 Err:     0 (0.00%)
summary +    738 in 00:00:30 =   24.6/s Avg:     0 Min:     0 Max:    19 Err:     0 (0.00%) Active: 2 Started: 757 Finished: 755
summary =   1511 in 00:01:32 =   16.4/s Avg:     0 Min:     0 Max:    19 Err:     0 (0.00%)
summary +    976 in 00:00:30 =   32.6/s Avg:     0 Min:     0 Max:    17 Err:     0 (0.00%) Active: 2 Started: 1245 Finished: 1243
summary =   2487 in 00:02:02 =   20.3/s Avg:     0 Min:     0 Max:    19 Err:     0 (0.00%)
summary +   1214 in 00:00:30 =   40.4/s Avg:     0 Min:     0 Max:     1 Err:     0 (0.00%) Active: 4 Started: 1854 Finished: 1850
summary =   3701 in 00:02:32 =   24.3/s Avg:     0 Min:     0 Max:    19 Err:     0 (0.00%)
summary +   1454 in 00:00:30 =   48.5/s Avg:     0 Min:     0 Max:     2 Err:     0 (0.00%) Active: 3 Started: 2580 Finished: 2577
summary =   5155 in 00:03:02 =   28.3/s Avg:     0 Min:     0 Max:    19 Err:     0 (0.00%)
summary +   1684 in 00:00:30 =   56.1/s Avg:     0 Min:     0 Max:     2 Err:     0 (0.00%) Active: 8 Started: 3427 Finished: 3419
summary =   6839 in 00:03:32 =   32.2/s Avg:     0 Min:     0 Max:    19 Err:     0 (0.00%)
summary +    488 in 00:00:30 =   16.1/s Avg:     2 Min:     0 Max:   361 Err:     0 (0.00%) Active: 155 Started: 3818 Finished: 3663
summary =   7327 in 00:04:03 =   30.2/s Avg:     0 Min:     0 Max:   361 Err:     0 (0.00%)
java.lang.OutOfMemoryError: Java heap space
Dumping heap to java_pid21386.hprof ...
Heap dump file created [2723488978 bytes in 41,828 secs]
Killed

It can be seen that the application lived up to the Active mark: 155. Perhaps, with 200 JMeter threads, they will also feel good. And then you have to choose.
If you set up a profile through a load step, as in HP LoadRunner, using Constant Throughput Timer or Precise Throughput Timer, then you can do the following:
1. Calculate the full profile and all parameters to achieve the desired intensity, for example, according to the https://loadtestweb.wordpress manual .com/2017/08/23/pacing/ - let it turn out 600 threads you need
2. Determine by experience that a station with 4 GB of memory under Heap Apache.JMeter draws 200 threads.
3. Calculate the number of stations as 600 / 200 = 3

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question