Skip to content

Remove the microtime() in output data and use wrk latency results #90

@joanhey

Description

@joanhey

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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions