2017-04-21 14 views
6

मेरे पास कोडिनेटर के साथ बनाई गई वेबसाइट है, जो उबंटू पर निगेंक्स और PHP-FPM के साथ चल रही है। यह कल रात तक ठीक काम करता था, जब यह पृष्ठों को वास्तव में धीमा करना शुरू कर देता था, कभी-कभी 504 दे रहा था, अन्य बार पृष्ठों को तेज़ी से लोड करना।Nginx + php-fpm यादृच्छिक हैंग

यदि मैं nginx या php-fpm को पुनरारंभ करता हूं, तो साइट 20-30 सेकंड के लिए ठीक काम करती है, फिर समस्या फिर से होती है।

यहाँ nginx त्रुटि लॉग कहते है:

[त्रुटि] 25,226 # 25,226: * 65 नदी के ऊपर का समय समाप्त हो (110: कनेक्शन समय समाप्त हो गया बाहर) नदी के ऊपर, ग्राहक से प्रतिक्रिया हेडर को पढ़ते समय: XXXX, सर्वर : www.mydomain.ext, अनुरोध: "प्राप्त करें/HTTP/1.1", अपस्ट्रीम: "fastcgi: // यूनिक्स: /var/run/php/php5.6-fpm.sock:", होस्ट: "www। mydomain.ext "

मैं पिछले कुछ के लिए nginx और php-fpm config के साथ googling और खेल रहा है घंटे, लेकिन मैं इसे हल नहीं कर सका।

क्या कोई जानता है कि मेरी मदद कैसे करें?

+0

क्या आपका एप्लिकेशन डेटाबेस से सहभागिता करता है? मुझे यह संदेश पहले प्राप्त हुआ है क्योंकि मेरे डेटाबेस सर्वर से कनेक्ट करने में सक्षम नहीं है, या एक क्वेरी को पूरा करने में अधिक समय लग रहा है, फिर fpm प्रक्रिया के max_execution_time। – commanderZiltoid

उत्तर

0

मेरे लिए यह एफपीएम प्रक्रिया प्रबंधन के साथ एक समस्या की तरह दिखता है। अधिक जानकारी के लिए यह link देखें। ऐसा लगता है कि आपके पास php-fpm के लिए उपलब्ध प्रक्रियाओं की स्थिर संख्या है और यातायात इससे अधिक है। मुझे इसी तरह के मुद्दों का सामना करना पड़ रहा था, लेकिन मुझे याद नहीं है कि यह सही त्रुटि संदेश था या नहीं। लेकिन व्यवहार की तरह आप बताया गया है, कुछ कनेक्शन वास्तव में धीमी गति से थे (? एफ पी एम के लिए प्रतीक्षा कर रहा है) अन्य 504. करने के लिए जा रहे थे

अद्यतन: मेरी सिद्धांत की पुष्टि करने के लिए आप फ़ाइल /etc/php5.6/pool.d/www.conf की जाँच करें और इस लाइन की जांच होनी चाहिए:

pm.max_children = X 

संख्या बढ़ाएं और एफपीएम को पुनरारंभ करें। फिर देखें कि समस्या हल हो गई है या नहीं।