upstream timed out (110: Connection timed out) while reading response header from upstream


Nginx報錯日志有如下內容:

upstream timed out (110: Connection timed out) while reading response header from upstream..

服務器開發環境: SLES12sp2 + Nginx + PHP-FPM + Maraidb集群

請求PHP頁面,瀏覽器一直處在加載狀態,頁面阻塞,沒有任何反應;

網上很多資料,大意是修改nginx配置文件,延長fastcgi等待時間,但不能解決根本問題。

經測試,問題出在php-fpm,php代碼要使用file存取session,讀寫數據庫,其中有一項操作緩慢,都能造成nginx假死;

解決方案:

打開php-fpm慢日志:

mkdir /var/log/php-fpm && chown nginx:nginx /var/log/php-fpm

vi   /etc/php7/fpm/php-fpm.d/www.conf

修改:

request_slowlog_timeout = 2s

request_terminate_timeout = 30s

slowlog = /var/log/php-fpm/$pool.log.slow

重啟nginx和php-fpm

刷新頁面,頁面一直停留在阻塞狀態,沒有反應,這時,

tailf  /var/log/php-fpm/www.log.slow

可以清楚看到執行慢的語句和操作,這樣就能找到具體原因!

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM