Getting this result from ab:

Concurrency Level:      10000

Time taken for tests:   69.153 seconds

Complete requests:      30000

Failed requests:        10379  

(Connect: 0, Receive: 3424, Length: 3531, Exceptions: 3424)

Write errors:           0

Total transferred:      48414203 bytes

HTML transferred:       41042477 bytes

Requests per second:    433.82

[#/sec] (mean)

What does Receive and Exceptions mean EXACTLY. Thanks.

1 Answer 1


From http://httpd.apache.org/docs/2.2/programs/ab.html ,

Failed requests
The number of requests that were considered a failure. If the number is greater
than zero,another line will be printed showing the numer of requests that
failed due to connecting, reading, incorrect content length, or exceptions.

If you are testing a "dynamic" page, then the conten-length will change and may result in a failure. Examples are ads or images or varying results on a page.

Exceptions, im guessing, are just exceptions thrown by the application on the page.

Your failure rate could be high because your backend application may not be able to withstand the load or the connections.

UPDATE: From ab source code, Receive (count of err_recv) means

/* catch legitimate fatal apr_socket_recv errors */
    else if (status != APR_SUCCESS) {
        if (recverrok) {
            if (verbosity >= 1) {
                char buf[120];
                fprintf(stderr,"%s: %s (%d)\n", "apr_socket_recv", apr_strerror(status, buf, sizeof buf), status);

This basically means, your apache/webserver had trouble with the packets sent by ab. This could be because of many things -- network, apache too busy ... When you ran the tests, did you see any errors in apache/webserver logs? specifically, connection reset or timed out?

  • Yeah. The length errors I'm not worried about. It's the Receive and Exceptions.
    – joedevon
    Aug 19, 2012 at 13:45
  • Thanks.... "When you ran the tests, did you see any errors in apache logs? specifically, connection reset or timed out?" Yes, tons
    – joedevon
    Aug 19, 2012 at 15:49
  • Then those are probably the receive errors. Looks like your server was too busy processing requests.
    – Chida
    Aug 19, 2012 at 16:39

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .