排除进程数不够,php执行超时的原因。
查看日志发现有502记录的错误,修改错误级别,改为error级
error_log 级别分为 debug, info, notice, warn, error, crit 默认为crit, 该级别在日志名后边定义格式如下:error_log 级别分为 debug, info, notice, warn, error, crit 默认为crit, 该级别在日志名后边定义格式如下:
error_log /your/path/error.log crit;
crit 记录的日志最少,而debug记录的日志最多。如果你的nginx遇到一些问题,比如502比较频繁出现,但是看默认的error_log并没有看到有意义的信息,那么就可以调一下错误日志的级别,当你调成error级别时,错误日志记录的内容会更加丰富。
查看错误日志
connect() to unix:/tmp/php-fpm.sock failed (11: Resource temporarily unavailable) while connecting to upstream
Unix域Socket因为不走网络,的确可以提高Nginx和php-fpm通信的性能,但在高并发时会不稳定。Nginx会频繁报错:connect() to unix:/dev/shm/php-fcgi.sock failed (11: Resource temporarily unavailable) while connecting to upstream
将socket改为端口,最好是起两个实例
upstream php
{
server 127.0.0.1:9001;
server 127.0.0.1:9002;
}
location ~ .*\.(php|php5)?$
{
fastcgi_pass php;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
/data/nginx/sbin/nginx -t
/data/nginx/sbin/nginx -e reload
再次观察错误日志,没发现502了,问题解决。
共同學習,寫下你的評論
評論加載中...
作者其他優(yōu)質文章