jmeter- common performance analysis
Outline
We are doing performance testing with jmeter time, there are some key performance indicators need to analyze. However, due to the limitations of open source tools themselves, these indicators named in the tool can easily cause confusion for us. So we need to analyze these indicators one by one.
indicator anaysis
Response time:
We assume that the response time is divided into the following paragraphs:
Time a user requesting via the client to the server are: T1
server receives the request, the request processing time is: T2
server returns data to the client time: T3
client receives the response data, the data presented to the processing user time: T4
From the system point of view:
the system response time Ts = T1 + T2 + T3. This time does not include time data processing and the client rendering T4
From a user point of view:
the response time of the user's eyes: Tu = T1 + T2 + T3 + T4. A user sends a service request via the client, to the client's request to show the respective results, the shorter the time the better the process
: From the server perspective
server receives a request sent by the client, and the response is given, the process time consumed by the response time, i.e. the server concerned only T2
From a different perspective, to measure the response time index also varies. In the actual testing process, we must be clear in what perspective verify the performance of the tested object.
In most cases, we do performance testing with jmeter response time to user perspective on.
Throughput:
We use the number of requests processed per unit time of the system to define it. Throughput directly reflects the system's software business processing capabilities
Way to measure the following categories:
Number of requests / unit of time
Hits / unit time
Bytes / unit of time
In the polymerization jmeter report certain named Throughput
Here to say two concepts, TPS and QPS
TPS: Transactions Per Second (number of transaction processing per second). Points to a transaction server sends a request and the server responding process
QPS: Queries per second rate. It is a measure of a particular query server within the specified time how much of the processing flow
So we do a visit to a page, it will form a TPS; but once page views, may result in multiple requests to the server, the server for these requests, counted as "QPS".
If you visit a page server will request three times, then a visit to produce a "T", produced three "Q"
We can use jmeter do an experiment to simulate a user with a thread group to visit at Tencent News. So this thing is a TPS
Observed inside the polymerization report Throughput = 7.6 / s
It represents a thread This request is sent 7.6 times within one second server at this time Throughput can be understood as QPS. That is, a TPS produces 7.6 QPS
But if we control things in a request to hang this one, as shown below
At this point in the polymerization report, Throughput and QPS can not be equated, but rather equal to the TPS, it means that our system can handle 3.4 things per second
Another example of the FIG. Log on to a series of processes from the middle of the exit if things are hanging in the controller, they can be counted as a whole thing. TPS it means that the entire process of handling the number per second
Example: 1 minute processing system 1000 attendance checking things, the throughput TPS = 1000/60 = 16.7 (times / sec)
Below indicates that the system can handle seven requests per second
Concurrent (threads):
Generalized
Simultaneously transmitting the number of requests per unit time to the server, is not limited to the specific traffic type, the emphasis is transmitted simultaneously
narrow sense
Are simultaneously transmitted per unit of time the number of service requests to the same server, to be limited to the specific service type, the same service request stressed
Server perspective
The number of concurrent requests per unit of time for the service received at number
Client Perspective
A specific business practices include a plurality of client requests, the number of concurrent requests may be understood as the number per unit of time within the client to the server side transmitted simultaneously
User Perspective
Client service request is usually a user operation behavior, the number of concurrent also be interpreted as the number of concurrent users, the number of virtual users can be called