Apache Bench-Testfehler unter OS X: „apr_socket_recv: Verbindung vom Peer zurückgesetzt (54)“

Apache Bench-Testfehler unter OS X: „apr_socket_recv: Verbindung vom Peer zurückgesetzt (54)“

Ich habe mein MacBook Pro 13" vor ein paar Wochen auf Lion aktualisiert. Ich habe gerade festgestellt, dass Apache Bench (apache2.2.19) nicht funktioniert. Es wird immer dieser Fehler angezeigt, egal was ich tue:

apr_socket_recv: Verbindung vom Peer zurückgesetzt (54)

Ich habe auch eine Neuinstallation auf meinem Mac Mini durchgeführt und es trat der gleiche Fehler auf.

Wie kann ich das beheben?

Antwort1

Beachten Sie, dass bei Verwendung -rmit Apache Bench kein Beenden bei Fehlern erfolgt.

Von demDokumentation:

-r
Bei Socket-Empfangsfehlern nicht beenden.

Antwort2

Dies liegt an einem Fehler in der Apache-Software, die mit Lion gebündelt ist. Eine neuere Version von Apache (Beta) behebt das Problem. So beheben Sie das Problem:

  1. Laden Sie die neueste Version von Apache herunter

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

Wenn 2.3.16 nicht verfügbar ist, gehen Sie zuhttp://apache.mirrors.pair.com/httpdund erhalten Sie die neuesten

  1. Installieren Sie pcre (hierfür benötigen Sie brew)

    $ brew install pcre
    
  2. Erstellen Sie Apache

    $ tar xzvf httpd-2.3.16-beta.tar.bz2
    $ cd httpd-2.3.16-beta
    $ ./configure
    $ make
    
  3. Überschreiben Sie das vorhandene AB mit dem neu erstellten

    $ sudo cp support/ab /usr/sbin
    

Antwort3

Haben Sie versucht, Folgendes 127.0.0.1anstelle von localhost zu verwenden?

http://Außerdem schlägt mein AB fehl, wenn ich die URL nicht davor schreibe .

Antwort4

Ich hatte den gleichen Fehler mit Mountain Lion ab v2.3 und war fast bereit, brew und die neueste Version von ab zu installieren, wie in einer der obigen Antworten beschrieben. Bevor ich mich schließlich dafür entschied, versuchte ich einfachHinzufügen des abschließenden Schrägstrichs.

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

Achten Sie in der obigen Nachricht auf das erforderliche Format der eingegebenen URL. Optionale Komponenten sind mit eckigen Klammern markiert. Beachten Sie jedoch, dass/WegTeil scheintnichtoptional. Ich bin also davon ausgegangen, dass ich, wenn ich die Stammdomäne teste, zumindestfüge den abschließenden Schrägstrich hinzu, das hat wirklich geholfen! Ich hoffe, das hilft Ihnen auch.

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

verwandte Informationen