ओएस एक्स पर अपाचे बेंच परीक्षण त्रुटि: "apr_socket_recv: सहकर्मी द्वारा कनेक्शन रीसेट (54)"


55

मैंने कुछ सप्ताह पहले अपने मैकबुक प्रो 13 "को लायन को अपडेट किया। मुझे अभी पता चला है कि अपाचे बेंच (Apache2.2.19) काम नहीं कर रही है। यह हमेशा इस त्रुटि को दिखाती है, कोई फर्क नहीं पड़ता:

apr_socket_recv: सहकर्मी द्वारा कनेक्शन रीसेट (54)

मैंने अपने मैक मिनी पर एक क्लीन इंस्टाल भी किया और यह उसी त्रुटि को उत्पन्न करता है।

मैं इसे कैसे ठीक करूं?


मुझे भी ये मिल रहे हैं .. मैं उन्हें एक छोटे गो वेब सर्वर का परीक्षण करते हुए, और पायथन गीवेंट सर्वर के साथ मिल रहा हूं।
जस्टिन

जवाबों:


65

ध्यान दें कि यदि आप -rअपाचे बेंच के साथ उपयोग करते हैं, तो यह त्रुटियों पर बाहर नहीं निकलेगा।

से प्रलेखन :

-r
सॉकेट पर बाहर निकलें त्रुटियों को प्राप्त न करें।


11
इसे छोड़कर यह गलत है। : मैं बस भागने की कोशिश की ab -n 200 -c 20 -r http://localhostऔर मिल गया (भगवान न करे एक टिप्पणी नई-पंक्तियों है!) Test aborted after 10 failures apr_socket_connect(): Operation already in progress (37) Total of 4 requests completed
umassthrower

3
दुर्भाग्य से यह अभी भी बाहर निकलता है
DataGreed

मेरे लिए OS X 10.9 पर काम किया
विलेम

47

यह अपाचे सॉफ्टवेयर में एक बग के कारण है जो शेर के साथ बंडल है। अपाचे (बीटा) का हालिया संस्करण समस्या को ठीक करता है। 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. पीसीआर स्थापित करें (आपको इसके लिए काढ़ा चाहिए)

    $ brew install pcre
    
  2. अपाचे का निर्माण करें

    $ tar xzvf httpd-2.3.16-beta.tar.bz2
    $ cd httpd-2.3.16-beta
    $ ./configure
    $ make
    
  3. नवनिर्मित एक के साथ मौजूदा एब को अधिलेखित करें

    $ sudo cp support/ab /usr/sbin
    

जब मुझे makehttp मिलता है: अनिर्धारित प्रतीक: "_apr_file_link", से संदर्भित: _post_rotate में rotatelogs.o ld: प्रतीक (ओं) को नहीं मिला collect2: ld ने 1 निकास स्थिति बना ली है [2]: *** [rotatelogs] त्रुटि 1 :
जोनाथन

क्या यह अभी भी OSX 10.8.2 में एक मुद्दा है?
क्रिस वैगनर

3
मैं एक नोड .js helloworld ऐप बेंचमार्किंग कर रहा हूँ। सबसे पहले मैं Connection reset by peer (54)किसी भी abबेंचमार्किंग के लिए प्राप्त कर रहा था । फिर ऊपर फिक्स करने के बाद, मैं कर सकता था ab -n 100 -c 100। तब मैं कर सकता था ab -n 200 -c 100। मैं कर सकता था ab -n 200 -c 150... जब मैं -cऊपर लेता हूं -c 200, तो इसे निष्पादित करता है और कभी-कभी यह एक Connection Reset by Peer (54)त्रुटि फेंकता है । यह गैर-नियतात्मक है। क्या करें?
रकीब

3
जब आप दौड़ रहे हों ./configureतो इस पोस्ट पर एक नज़र डालें configure: error: C compiler cannot create executables: stackoverflow.com/a/11712497/599391
Chiubaka

5

इस लिंक पर होमब्रे के माध्यम से ab को अपडेट करने की विधि का उपयोग करना मेरे लिए काम किया।

brew install 'https://raw.github.com/simonair/homebrew-dupes/e5177ef4fc82ae5246842e5a544124722c9e975b/ab.rb'
brew test ab

2
सुपर उपयोगकर्ता में आपका स्वागत है! जब भी यह सैद्धांतिक रूप से प्रश्न का उत्तर दे सकता है, तो यहां उत्तर के आवश्यक भागों को शामिल करना बेहतर होगा , और संदर्भ के लिए लिंक प्रदान करना होगा।
slhck

मैं मिल रहा हूँ:Error: Download failed: http://www.apache.org/dist/httpd/httpd-2.4.2.tar.bz2
बेंजामिन क्राउज़ियर

@pinouchon हालांकि स्क्रिप्ट अब लेखक द्वारा बनाए रखी जा रही है, यहां एक नया, काम करने वाला लिंक है: raw.githubusercontent.com/simonair/homebrew-dupes/… (टाइप करें:brew install "https://raw.githubusercontent.com/simonair/homebrew-dupes/e26f111d450d1a030515e1dde4e1dc4693efa78d/ab.rb")
Matt3o124

त्रुटि: ab: अपरिभाषित विधि `sha1 'फॉर्मूलरी के लिए :: FormulaNamespacebc6d3f6af42f9cfa51e2e726dcc9ff30 :: Ab: Class @ Matt3o12
Mark Ramotowski

4

क्या आपने उपयोग करने का प्रयास किया: 127.0.0.1लोकलहोस्ट के बजाय?

इसके अलावा अगर मैं url को http://सामने से नहीं लिखता तो मेरा एब विफल हो जाता है ।


2

माउंटेन लायन एबी v2.3 के साथ मेरी भी यही त्रुटि थी, और उपरोक्त उत्तरों में से एक के अनुसार निर्देश के अनुसार काढ़ा और ऐब के नवीनतम संस्करण को स्थापित करने के लिए लगभग तैयार था। अंत में इस तरह से जाने से पहले मैंने केवल अनुगामी स्लैश को जोड़ने की कोशिश की ।

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

0

परीक्षण करने के लिए कुछ चीजें:

  • क्या आप फ़ायरवॉल को अक्षम करने की कोशिश कर सकते हैं, अगर वह काम करता है?
  • वेब साझाकरण सक्षम करें और लोकलहोस्ट परीक्षण करें / (सुनिश्चित करें कि यह पहले एक ब्राउज़र में काम करता है)

यदि उनमें से कोई भी काम आप एक टर्मिनल नहीं खोल सकते हैं और

$ sudo opensnoop

फिर अपाचे बेंच को चलाएं और सवाल में खुलने वाले टर्मिनल के आउटपुट को पोस्ट करें। अगर उस काम में से कोई भी आप macports को स्थापित करने की कोशिश नहीं कर सकता है और फिर वहां से अपाचे को स्थापित कर सकता है और यह देख सकता है कि क्या यह काम के आसपास काम करता है (जैसे लंगड़ा)।

माई एयर शेर पर है लेकिन अपाचे संस्करण अलग है (हाल ही में एक अपडेट हुआ था, क्या आपने पहले ही स्थापित किया है?)। मैं मेरे लिए काम करता है ab सत्यापित करने में सक्षम था:

$ ab -V
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/
$ uname -a
Darwin air.local 11.1.0 Darwin Kernel Version 11.1.0: Tue Jul 26 16:07:11 PDT 2011; root:xnu-1699.22.81~1/RELEASE_X86_64 x86_64
$ ab google.com/ 
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 google.com (be patient).....done


Server Software:        gws
Server Hostname:        google.com
Server Port:            80

Document Path:          /
Document Length:        219 bytes

Concurrency Level:      1
Time taken for tests:   4.130 seconds
Complete requests:      1
Failed requests:        0
Write errors:           0
Non-2xx responses:      1
Total transferred:      511 bytes
HTML transferred:       219 bytes
Requests per second:    0.24 [#/sec] (mean)
Time per request:       4130.343 [ms] (mean)
Time per request:       4130.343 [ms] (mean, across all concurrent requests)
Transfer rate:          0.12 [Kbytes/sec] received

Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:     4119 4119   0.0   4119    4119
Processing:    11   11   0.0     11      11
Waiting:       11   11   0.0     11      11
Total:       4130 4130   0.0   4130    4130

उत्तर के लिए धन्यवाद @polynomial :) ab google.com/मेरे लिए भी काम करता है, कोशिश करेंab -n 1000 -c 1000 google.com/
बेन

@ मुझे ऐसी ही समस्या है, और मुझे याद है कि इसे http: // जोड़कर हल किया गया था? मैं अब विंडोज़ मशीन पर हूँ, घर पहुँचने पर जाँच करूँगा।
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.