-
Notifications
You must be signed in to change notification settings - Fork 7
Description
Actually some frameworks include the lib/output_data.php in the middle of the response, so the microtime() for the execution time is not realistic to compare with others. Also we only check 1 output data, not the average or maximum.
Now the execution time is taken from only 1 check (request), and is not representative from the real execution time.
We can use the data from wrk to create the data and graphs.
Example:
Thread Stats Avg Stdev Max +/- Stdev
Latency 1.22ms 1.09ms 50.47ms 96.36%
Req/Sec 7.69k 1.42k 12.35k 86.44%
Latency Distribution
50% 1.08ms
75% 1.30ms
90% 1.73ms
99% 2.96ms
6467305 requests in 15.10s, 1.90GB read
Non-2xx or 3xx responses: 6467305
Requests/sec: 428286.83
Transfer/sec: 128.66MB
The important data is here: req/s, latency and errors.
We can remove the microtime() in the output_data.php and use the Avg Latency, that's the important time. Also it'll be useful another graph with the Max Latency.
Another important data is if exist errors Non-2xx or 3xx responses as that is a big problem that we are not measuring.