"AH00485: स्कोरबोर्ड भरा हुआ है, MaxRequestWorkers पर" का क्या अर्थ है?


25

मेरा पर्यावरण

  • सेंटोस 6.4 X86_64
  • अपाचे 2.4.4
  • PHP 5.4.16 (FPM)
  • 2 इंटेल Xeon E5-2620 @ 2.00GHz (प्रत्येक प्रोसेसर में 8 कोर, 16 धागे)
  • 48 जीबी रैम पंजीकृत मेमोरी।
  • RAID0 में 3 हार्ड डिस्क 15RPM 145GB (बायो द्वारा

दिलचस्प चर

    <IfModule mpm_event_module>
        StartServers             2
        ThreadLimit             196
        MinSpareThreads         96
        MaxSpareThreads        192
        ThreadsPerChild         96
        MaxRequestWorkers      192
        MaxConnectionsPerChild   96
    </IfModule>

अपाचे सर्वर स्थिति

सर्वर संस्करण: Apache / 2.2.4 (यूनिक्स) OpenSSL / 1.0.1e mod_fastcgi / mod-fastcgi-SNAP-0910052141
सर्वर निर्मित: 24 मई 2013 16:48:07


वर्तमान समय: सोमवार, 17-जून -2017 09:48:11 कॉट रिस्टार्ट
टाइम: सोमवार, 17-जून -2016 08:35:14 COT
पैरेंट सर्वर कॉन्फ़िगरेशन। जनरेशन: 1
पेरेंट सर्वर MPM जनरेशन: 0
सर्वर अपटाइम: 1 घंटे 12 मिनट 57 सेकंड
सर्वर लोड: 0.05 0.10 0.09
कुल एक्सेस: 14144 - कुल ट्रैफिक: 349.7 एमबी
CPU उपयोग: u.28 s.25 c00 cs0 - .0121% CPU लोड
3.23 अनुरोध / सेकंड - 81.8 केबी / सेकंड - 25.3 केबी / अनुरोध
1 वर्तमान में संसाधित किया जा रहा है, 191 निष्क्रिय श्रमिक

  PID | Connections       | Threads     | Async connections
      | total | accepting | busy | idle | keep-alive | closing
  ==============================================================
18997 | 3     | yes       | 1    | 95   | 0          | 3
18485 | 0     | yes       | 0    | 96   | 0          | 0
  ==============================================================
Sum   | 3     |           | 1    | 191  | 0          | 3

त्रुटि संग्रह

त्रुटि संदेश है

[सोम जून १ ९ ० ९: ३२: ४५.६8०४२२ २०१३] [mpm_event: error] [pid 8574: tid 140185091581760] AH00485: स्कोरबोर्ड भरा हुआ है, MaxRestestWorkers पर नहीं

यह हर कुछ सेकंड में दिखाई देता है। मैं इसे नहीं समझता। मेरे द्वारा यह कैसे किया जा सकता है?

जवाबों:


18

हमें Apache 2.4.6 पर यही समस्या थी। सर्वर की निगरानी और कई घंटों के लिए सेटिंग को समायोजित करने के बाद यह हमें प्रतीत होता है कि अपाचे में बग हो सकता है। ऐसा प्रतीत होता है कि सर्वर प्रक्रिया कभी-कभी Gराज्य में जाती है (ग्रेसफुल फिनिशिंग) और नए अनुरोधों को स्वीकार करने के लिए पुनरारंभ होता है, यह सामान्य है। जो सामान्य नहीं है वह यह है कि किसी कारण से इसे पुनः आरंभ करने में कुछ मिनट लग सकते हैं। यदि आपके पास केवल कुछ सर्वर प्रक्रिया चल रही है और वे सभी Gएक ही समय में राज्य में जाते हैं तो आपका स्कोरबोर्ड भर जाता है और आप किसी भी अधिक अनुरोध को सर्वर में लाने में सक्षम नहीं होंगे।

हमने जो किया वह सर्वरों की संख्या में वृद्धि थी, इसलिए इस बात की संभावना कम है कि वे सभी Gएक ही समय में राज्य में जाएंगे । यह भी सुनिश्चित करें कि आप MaxRequestWorkersप्रत्येक सर्वर प्रक्रिया के लिए कम से कम 25 थ्रेड ( ) आवंटित करते हैं क्योंकि यह डिफ़ॉल्ट प्रतीत होता है (अर्थात यदि 5 Serversx ThreadsPerChild25/125 MaxRequestWorkers)। आप चाहें ThreadsPerChildतो बदल सकते हैं , हमने इसे डिफ़ॉल्ट पर छोड़ दिया है। यदि आप पर्याप्त थ्रेड आवंटित नहीं करते हैं तो अतिरिक्त सर्वर शुरू नहीं होंगे। हम छोड़ दिया MinSpareThreadsडिफ़ॉल्ट मान जो 25 है पर और के लिए डिफ़ॉल्ट MaxSpareThreadsजो 75 है आप इन सेटिंग्स को संशोधित, के लिए मूल्य करते हैं MaxSpareThreadsअधिक होना चाहिए की तुलना में या की राशि के बराबर MinSpareThreadsऔर ThreadsPerChild। के MaxRequestWorkersबराबर या उससे कम होना चाहिए ServerLimit

यहां हमारे लिए काम किया गया है लेकिन यह आपके लिए सबसे अच्छा कॉन्फ़िगरेशन नहीं हो सकता है।

StartServers 3
MinSpareServers 5
MaxSpareServers 10
ServerLimit 250
MaxRequestWorkers 250
MaxConnectionsPerChild 1000
KeepAlive Off

संपादित करें: यह httpd के mpm_event मॉड्यूल में एक पुष्ट बग है जो कॉन्फ़िगरेशन के माध्यम से ठीक नहीं हो सकता है।
लिंक किए गए बगट्रैकर प्रविष्टि में एक निर्धारित पैच और अधिक चर्चा है कि इसे कैसे ठीक किया जाए जब तक कि इवेंट मॉड्यूल का एक नया संस्करण आधिकारिक तौर पर जारी नहीं किया जाता है।


MaxConnectionsPerChildउत्पादन उपयोग के लिए आपकी सेटिंग बहुत कम है। इसके अलावा, इसे 0 के अलावा किसी भी चीज़ में सेट करना केवल विंडोज पर करने के लिए है क्योंकि यह मेमोरी को आंतरिक रूप से लीक करता है।
rustyx

Apache error_log भी संकेत देता है:MaxRequestWorkers of 40 is not an integer multiple of ThreadsPerChild of 25, decreasing to nearest multiple 25
dhaupin

1
MaxSpareServers / MinSpareServers mpm_event पर लागू नहीं हैं। मुझे यकीन नहीं है कि आपका यहाँ क्या मतलब है क्योंकि संख्याएँ MaxSpareThreads / MinSpareThreads होने के लिए बहुत कम हैं।
हमीश मोफ़त

अपाचे 2 लॉग रोटेशन में डेबियन पर भी इस परेशानी का सामना करना पड़ा। का संदर्भ लें support.plesk.com/hc/en-us/articles/...
यवेस मार्टिन

इस उत्तर में वर्णित पैच 2.4.25 में विलय कर दिया गया था। मैं यहां हूं क्योंकि मुझे समस्या है, हालांकि मैं 2.4.25 का उपयोग कर रहा हूं। जाहिरा तौर पर, यह लॉगरोट द्वारा ट्रिगर किए गए एक पुनः लोड पर दिखाई दिया और प्रक्रियाओं में लिखना जारी है error.log.1error.logकेवल पुनः लोड का उल्लेख करता है।
जेरोम

3

इसी मुद्दे को देखते हुए।

Apache 2.4.7-1ubuntu4.4 on Ubuntu 14.04
Server Version: Apache/2.4.7 (Ubuntu)
Server MPM: event
Server Built: Mar 10 2015 13:05:59 

हम विशेष रूप से अपाचे को फिर से लोड करके इस व्यवहार का कारण बन सकते हैं।

फिर हम जो देखते हैं, वह कुछ पुरानी प्रक्रियाएँ हैं जो रुकती नहीं हैं:

root     28192  0.0  0.8 103772  8648 ?        Ss   Mar16   0:03 /usr/sbin/apache2 -k start
www-data  2530  0.3  2.1 865188 21516 ?        Sl   06:26   0:54  \_ /usr/sbin/apache2 -k start
www-data  2531  0.2  2.1 865436 21892 ?        Sl   06:26   0:51  \_ /usr/sbin/apache2 -k start
www-data  3299  0.3  2.0 864140 20628 ?        Sl   06:46   0:51  \_ /usr/sbin/apache2 -k start
www-data  7305  0.3  2.1 865100 21504 ?        Sl   08:36   0:37  \_ /usr/sbin/apache2 -k start
www-data 11952  0.2  1.8 863004 19268 ?        Sl   10:46   0:06  \_ /usr/sbin/apache2 -k start
www-data 13284  0.0  0.6 103772  6692 ?        S    11:18   0:00  \_ /usr/sbin/apache2 -k start
www-data 13553  2.1  2.0 866156 21248 ?        Sl   11:23   0:01  \_ /usr/sbin/apache2 -k start

'पुराने' और 'नए' पीआईडी ​​की सूचना दें और शुरुआत करें। ^^

PID Connections     Threads Async connections
total   accepting   busy    idle    writing keep-alive  closing
7305    14  no  0   0   0   0   0
2530    13  no  0   0   0   0   0
3299    7   no  0   0   0   0   0
13553   65  no  17  8   0   25  25
2531    15  no  0   0   0   0   0
11952   10  no  0   0   0   0   0
Sum 124     17  8   0   25  25

GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG
GGGGGGGGGGGW_WWWW__W_W_W_WWWWWWW__WWGGGGGGGGGGGGGGGGGGGGGGGGGGGG
GGGGGGGGGGGGGGGGGGGGGG

0

हमने यह तब देखना शुरू किया जब हमारे प्रतिकृति डेटाबेस में से एक ऑफ़लाइन हो गया और समय समाप्त हो गया। यह अपाचे में एक गज़िलियन धागे से बंधा हुआ था, जाहिरा तौर पर जब तक चीजें नहीं टूटी थीं और हमें यह संदेश मिलना शुरू हो गया था।

शायद सामान्य मामला नहीं है, लेकिन मैं इस उम्मीद में कैनन को प्रस्तुत करता हूं कि यह दूसरों को मदद कर सकता है जो इस त्रुटि को देखते हैं।

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