OS X 上的 Apache Bench 测试错误:“apr_socket_recv:对等方重置连接 (54)”

OS X 上的 Apache Bench 测试错误:“apr_socket_recv:对等方重置连接 (54)”

几周前,我将 MacBook Pro 13" 升级到了 Lion。我刚刚发现 Apache Bench (apache2.2.19) 无法正常工作。无论如何,它总是显示此错误:

apr_socket_recv:对端重置连接(54)

我也在我的 Mac Mini 上进行了全新安装,但出现了同样的错误。

我怎样才能解决这个问题?

答案1

请注意,如果您-r与 Apache Bench 一起使用,它不会因错误而退出。

来自文档

-r
套接字接收错误时不要退出。

答案2

这是由于与 Lion 捆绑在一起的 Apache 软件中的一个错误造成的。较新版本的 Apache(测试版)修复了这个问题。要修复 ab,请按以下步骤操作:

  1. 下载最新版本的 Apache

    $ wget http://apache.mirrors.pair.com//httpd/httpd-2.3.16-beta.tar.bz2
    

如果 2.3.16 不可用,请转到http://apache.mirrors.pair.com/httpd并获取最新

  1. 安装 pcre (你需要 brew 来实现)

    $ brew install pcre
    
  2. 构建 Apache

    $ tar xzvf httpd-2.3.16-beta.tar.bz2
    $ cd httpd-2.3.16-beta
    $ ./configure
    $ make
    
  3. 用新建的 ab 覆盖现有的 ab

    $ sudo cp support/ab /usr/sbin
    

答案3

您是否尝试过使用:127.0.0.1而不是 localhost?

如果我不在http://前面写 url,我的 ab 也会失败。

答案4

我在使用 Mountain Lion ab v2.3 时遇到了同样的错误,并且几乎准备好按照上述答案之一的指示安装 brew 和最新版本的 ab。在最终这样做之前,我尝试了添加尾部斜杠

user$ ab http://dl.cubrid.org
ab: invalid URL
Usage: ab [options] [http[s]://]hostname[:port]/path

在上述消息中,请注意输入 URL 的格式要求。可选组件用方括号标记,但请注意/小路部分似乎是不是可选。因此,我认为如果我要测试根域,我至少应该添加尾部斜杠,确实起到了作用!希望这对你也有帮助。

user$ ab dl.cubrid.org/
This is ApacheBench, Version 2.3 <$Revision: 655654 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/

Benchmarking dl.cubrid.org (be patient).....done


Server Software:        
Server Hostname:        dl.cubrid.org
Server Port:            80

Document Path:          /
Document Length:        13437 bytes

Concurrency Level:      1
Time taken for tests:   0.863 seconds
Complete requests:      1
Failed requests:        0
Write errors:           0
Total transferred:      13606 bytes
HTML transferred:       13437 bytes
Requests per second:    1.16 [#/sec] (mean)
Time per request:       862.778 [ms] (mean)
Time per request:       862.778 [ms] (mean, across all concurrent requests)
Transfer rate:          15.40 [Kbytes/sec] received

Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:      207  207   0.0    207     207
Processing:   655  655   0.0    655     655
Waiting:      234  234   0.0    234     234
Total:        862  862   0.0    862     862

相关内容