ab apr_socket_recv के साथ गलत कर रहा है: कनेक्शन ने इनकार कर दिया (61)


79

मैं ईवेंटलेट का परीक्षण कर रहा हूं, और मुझे यह त्रुटि मिल रही है:

~>ab -n 10 -c 1 http://localhost:8090/
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 localhost (be patient)...apr_socket_recv: Connection reset by peer (54)
Total of 2 requests completed

वेबसाइट लोकलहोस्ट: 8090 / पर काम करती है और 200 ओके रिटर्न देती है।

मुझे टॉमकैट के साथ एक ही मुद्दा था, फिर से वेबसाइट ने ठीक काम किया।

मुद्दा क्या हो सकता है?


1
क्या यह एक आईपीवी 6 समस्या हो सकती है, जो कि लोकलहोस्ट का अनुवाद करने की कोशिश कर रही है और :: 1 पहला और असफल?
जुरगेन स्ट्रोबेल

यह एक फ़ायरवॉल समस्या हो सकती है? या शायद आप प्रॉक्सी का उपयोग कर रहे हैं?
utapyngo

यदि आपको यह त्रुटि मिलती है जब abmacOS पर ~ 16k अनुरोध किए गए हैं, तो इसे देखें: stackoverflow.com/a/30357879/537554 स्पष्टीकरण के लिए, और सर्वरफ़ॉल्ट . com/ a/ 145937/91715 को ठीक करने के लिए।
रायनस

जवाबों:


179

मैंने लोकलहोस्ट के बजाय 127.0.0.1 का उपयोग किया है:

ab -n 10 -c 1 http://127.0.0.1:8090/

अद्यतन: मई में एक बग हो गया है: https://groups.google.com/forum/# .msg/nodejs/TZU5H7MdoII/ yivu0d4LMaJ


2
नमस्ते, मेरे लिए नहीं, मुझे वही त्रुटि मिलती है। क्या आप शेर चला रहे हैं? यह मेरे लिए b4 उन्नयन के लिए ठीक काम किया।
ब्लैंकमैन

2
मेरी त्रुटि आपसे कुछ भिन्न थी - लेकिन हाँ मैं सिंह पर हूँ। शेर पर एक ab बग की तरह दिखता है: groups.google.com/forum/#!msg/nodejs/TZU5H7MdoII/yivu0d4LMaAJ
dkam

1
यह एब का बग है, अपाचे को पैच करना है और एक नया एब बनाना है। नीचे दिए गए चरणों को देखें। stackoverflow.com/a/8825278/47441
Sun Liwen

वही माउंटेन लायन के लिए जाता है, इसमें 2.3 संस्करण हैं।
Arne

मेरे लिए मेरे द्वारा काम किए गए संगोष्ठी पैरामीटर को कम करें
दीपक

12

नए संस्करण की अपाचे ने समस्या को ठीक कर दिया है। केवल अब पुनर्निर्माण करना है।

Http://archive.apache.org/dist/ से नवीनतम पैकेज डाउनलोड करने का प्रयास करें

अपाचे को पैच करना और एक नया एब बनाना होगा।

$ wget http://archive.apache.org/dist/httpd/httpd-2.3.16-beta.tar.bz2
$ tar jxvf httpd-2.3.16-beta.tar.bz2 
$ cd httpd-2.3.16-beta
$ ./configure

केवल एब का निर्माण करना है, जो समर्थन फ़ोल्डर में स्थित है।

$ cd support
$ make
...
$ ./ab -n 10 -c 1 http://localhost:8090/

यदि आपकी अपाचे बहुत पुरानी है, तो इसे पैच करें और ऊपर के रूप में बनाएं।

$ wget https://www.rtfm.ro/download/patches/ab.patch --no-check-certificate
$ patch -p0 < ./ab.patch

किया हुआ।


Cp सपोर्ट / ab / to usr / sbin (या जहाँ भी 'जो ab' द्वारा निर्धारित किया गया है) सुनिश्चित करें
सुनील गौड़ा

8

उस -rविकल्प को जोड़ें जिसका अर्थ है कि सॉकेट पर बाहर न निकलना त्रुटियों को प्राप्त करता है। कई बार आप डिफ़ॉल्ट ulimit आकार मान बदल सकते हैं। ab -r -n 10 -c 1 http://localhost:8090/


1

एक अन्य संबंधित बग जो अभी भी मौजूद है ab( apache-2.4.29) है कि यह पहले परिणाम से लेता है getaddrinfo। यह शायद यह बग है जिसका उल्लेख जुरगेन स्ट्रोबेल ने एक टिप्पणी में किया है । मान लीजिए कि आपके पास /etc/hostsऐसा है:

127.0.0.1   localhost.localdomain   localhost
::1     localhost.localdomain   localhost

पहला परिणाम द्वारा दिया getaddrinfoके लिए localhostहै ::1। इसलिए abIPv6 से जुड़ने की कोशिश करता है और विफल हो जाता है। वैकल्पिक हल उपयोग करने के लिए है 127.0.0.1: ab -n 10 127.0.0.1/। या लाइनों को फिर से व्यवस्थित करें। हालाँकि, मेरे मामले में यह कहता है:

Benchmarking localhost (be patient)...apr_socket_recv: Connection refused (111)

0

इस बग के लिए एक पैच है, मैंने इस गाइड के चरणों का पालन किया और यह मेरे लिए अब शेर में काम करने लगता है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.