当前位置:首页 > 网站建设 > 建站交流 > 正文内容

nginx 502排错

热淘网8年前 (2014-03-27)建站交流3310
线上一台机器(该论坛所在机器)近期频繁出现502,每100次访问就会出现10次,这频率也太高了。于是开始了我的502排查之旅。
1.



  1. ps aux |grep -c php



复制代码

结果为200



  1. netstat -an |grep -c php



复制代码

结果一直在5以下,这说明php-cgi 的进程是绝对够用的。

2. 查看php-fpm.log



  1. tail -f  /usr/local/php/logs/php-fpm.log



复制代码

无有价值信息

3. 查看nginx错误日志



  1. tail -f /usr/local/nginx/logs/error.log



复制代码

无有价值信息

4. 感觉问题可能出在了nginx的配置上,于是网上找关于nginx.conf 的配置说明,改来改去始终解决不了这难缠的502。(该过程前后延续一周之多,改了N多个参数,因为没有价值,所以我不再详细记录,在这里简单一笔带过。)

5. 几天过后,突然灵机一动,nginx的错误日志既然不报错,那说明定义的日志级别没有达到要报错的要求,于是找资料修改nginx错误日志级别为error(默认为crit)
请参考http://mylinux.5d6d.net/thread-1289-1-1.html
终于发现有价值的信息:
connect() to unix:/tmp/php-fpm.socket failed (11: Resource temporarily unavailable) while connecting to upstream
google了一番,马上就找到了解决问题的方法:

6. 修改php-fpm.conf




  1. <value name="backlog">-1</value>



复制代码

改成:



  1. <value name="backlog">1024</value>



复制代码

这 是因为,php-fpm 在 backlog 设置为 -1 的情况下,表示backlog数无限制,由操作系统决定,而操作系统是由内核参数net.core.somaxconn 决定,我的操作系统该参数的值设置的很大为262144。该参数的值默认为128,我想设置成262144肯定是不合理的。所以,我又试验了一下。

7. 不修改php-fpm.conf ,即backlog的值为-1, 然后把net.core.somaxconn修改为默认值128 ,此时也没有再出现502

总结,本次502事故的主要原因是内核参数配置不当引起的,至于这个backuplog 参数具体的含义以及应该配置多大合理,以后我会专门写一篇帖子来阐述。

<p>扫描二维码推送至手机访问。</p><p>版权声明:本文由<strong>网站标题</strong>发布,如需转载请注明出处。</p>

本文链接:https://www.retao5.com/jianzhan/117.html

标签: nginx502
分享给朋友:

相关文章

robots是否能彻底屏蔽搜索蜘蛛的爬行和索引?

robots是否能彻底屏蔽搜索蜘蛛的爬行和索引?

说到屏蔽搜索蜘蛛的抓取,自然而然的就会想到robots.txt文档。robots.txt是什么?其实在此前惠州SEO叶剑辉也已经对此进行了基础的说明。robots.txt是一种存放在网站空间根目录下的...

Linux自动对时命令

Linux自动对时命令

一条很实用的命令,可以用来给linux自动对时。/usr/bin/rdate -s time-b.timefreq.bldrdoc.gov...

将域名从Godaddy转移到Namesilo详细图文教程

将域名从Godaddy转移到Namesilo详细图文教程

因为Godaddy经常推出一些特价域名优惠码,其中也包含转移的域名优惠码。但是Godaddy的续费优惠码却很少有给力的,所以有人就想,先将 Godaddy里的域名转移到其他域名商,然后再利用Goda...

网站模板下载器2.6 绿色版

网站模板下载器2.6 绿色版

1、第一步选择需要下载的网页,一般只要网站首页 例如:[url=http://www.baidu.com/]http://www.baidu.com/[/url] 因为其他页面调用页面CSS样式文件和...

mysql开启查看慢查询日志

mysql开启查看慢查询日志

[align=left]mysql开启查看慢查询日志[/align][align=left]1,配置开启在mysql配置文件my.cnf中增加 [/align][align=left]log-slow...

is marked as crashed and last (automatic?) repair解决办法,lnmp数据库修复办法

is marked as crashed and last (automatic?) repair解决办法,lnmp数据库修复办法

is marked as crashed and last (automatic?) repair解决办法,lnmp数据库修复办法,当数据表数据很多时,优化数据表偶尔会卡死,然后在重启数据库,数据表会...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。