Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

रैंडम PHP FastCGI/पीयर/अपूर्ण हेडर द्वारा कनेक्शन रीसेट

यह समस्या आम तौर पर केवल होस्ट विशिष्ट नहीं है, यह कॉन्फ़िगरेशन के आधार पर डेवलपर से भी संबंधित है। हालांकि कुछ होस्ट FastCGI के साथ सख्त हैं और आपकी क्षमताओं को सीमित कर देंगे। FastCGI का उपयोग किए बिना चलाना आम तौर पर आसान है और जब तक आप mod_php का उपयोग नहीं करते हैं आपके आवेदन में FastCGI का उपयोग करने की विशिष्ट आवश्यकता है।

फास्टसीजीआई स्पॉनिंग के लिए हमें आपका fcgi रैपर (/dev/shm/blackmou-php.fcgi में क्या है) या .htaccess देखने की आवश्यकता होगी, ताकि यह जाने बिना कि कौन सी फाइलें और कोड उन फाइलों पर है जिनके साथ समस्या होती है। क्या आपके होस्ट भी Apache, LightHttpd, या Nginx (या संयोजन) का उपयोग करते हैं? उस समय मैं दृढ़ता से PHP 5.3.9+ का उपयोग करने के लिए अद्यतन करने का सुझाव देता हूं

चूंकि यह किसी भी समस्या के कारण हो सकता है, FastCGI प्रभावी रूप से आपकी साइट/स्क्रिप्ट को सेवा से वंचित होने या मेमोरी लीक आदि के कारण क्रैश होने से रोकता है। अनुरोधों की संख्या या प्रक्रिया को समयबद्ध और समाप्त करके एक अंतहीन पाश में फंसना)

विशेष रूप से यह त्रुटि आम तौर पर एक निष्क्रिय_टाइमआउट (डिफ़ॉल्ट रूप से 30 सेकंड) या अधिकतम बच्चों की प्रक्रियाओं की सीमा के कारण होती है। यह किसी लंबे समय तक चलने वाली स्क्रिप्ट शुरू करने और स्क्रिप्ट के पूरा होने से पहले अपने ब्राउज़र/कनेक्शन को बंद करने के कारण भी हो सकता है।

FastCGI ने अपना प्रोसेस रैपर लॉन्च किया, एक कमांड निष्पादित किया, प्रक्रिया को पूरा करने से पहले का समय समाप्त हो गया, कनेक्शन को सहकर्मी द्वारा रीसेट के रूप में देखा गया।

एक अन्य उदाहरण यह है कि अधिकतम बच्चे (अधिकतम प्रक्रियाएं) तक पहुंच गए हैं (उदा:बहुत सी साइटें उदाहरण के रूप में 2 या 4 दिखाती हैं जब वास्तव में आपको औसत ट्रैफ़िक के आधार पर 20 या 50 की आवश्यकता हो सकती है) यदि सभी बच्चे वर्तमान में सक्रिय हैं और एक अतिरिक्त अनुरोध/ कनेक्शन बनाया गया है, बच्चे अधिकतम प्रक्रियाओं तक सीमित हैं, जिसमें FastCGI सक्रिय बच्चों को साझा नहीं करेगा, इसलिए इसे पहले या तो प्रक्रिया को समाप्त करना होगा और एक नई चाइल्ड प्रक्रिया शुरू करनी होगी, या आपके कॉन्फ़िगरेशन के आधार पर अनुरोध को छोड़ना होगा।

यहां सेटिंग के बारे में कुछ और जानकारी दी गई है:

http://www.fastcgi.com/mod_fastcgi/docs/mod_fastcgi.html

http://www.fastcgi.com/drupal/node/10

आवरण उदाहरण

PHP_FCGI_CHILDREN=0 #no limit
export PHP_FCGI_CHILDREN
PHP_FCGI_MAX_REQUESTS=10000
export PHP_FCGI_MAX_REQUESTS

अपडेट करें

इसे जोड़ने के लिए, यह php मेमोरी लिमिट के कारण भी हो सकता है

यदि उपरोक्त आपकी समस्या का समाधान नहीं करता है, तो memory_limit बढ़ाने के लिए अपनी php.ini को अपडेट करें



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL स्थानिक सूचकांक का उपयोग करके 5 निकटतम पड़ोसी प्राप्त करने के लिए एक सामान्य डेटाबेस तैयार करना

  2. क्या MySql sp_getapplock का समर्थन करता है

  3. पीडीओ पर bind_result के बराबर क्या है

  4. सर्वर में डेटाबेस से कनेक्ट होने वाला स्पंदन

  5. PHP में हाइबरनेट के समान कुछ भी?