免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 5854 | 回复: 13
打印 上一主题 下一主题

nginx 502 有没有什么好的办法监控下问题出在哪里 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2013-02-03 22:06 |只看该作者 |倒序浏览
nginx 502   有没有什么好的办法监控下问题出在哪里

502 的害的我好惨啊,网上说的哪些timeout都试过了

论坛徽章:
0
2 [报告]
发表于 2013-02-04 13:23 |只看该作者
还有可能是程序问题,后面用的是PHP吧?这个需要看日志

论坛徽章:
4
水瓶座
日期:2013-09-06 12:27:30摩羯座
日期:2013-09-28 14:07:46处女座
日期:2013-10-24 14:25:01酉鸡
日期:2014-04-07 11:54:15
3 [报告]
发表于 2013-02-04 13:46 |只看该作者
看error.log,是否出现了连接php-cgi超时, 需要观察同一时刻机器cpu idle, cpu wa, io util等观察诱发原因。

论坛徽章:
0
4 [报告]
发表于 2013-02-04 20:47 |只看该作者
本帖最后由 llzqq 于 2013-02-04 20:48 编辑

按下列思路优化一下系统,跑跑试试:

3. PHP版本
PHP>>=5.4.11    //修补了PHP-FPM的一些BUG

4. 优化一下PHP.INI
memory_limit = 256M(或更大些)
cgi.fix_pathinfo=0

5. 优化一下NGINX配置:
fastcgi_connect_timeout                60;
fastcgi_send_timeout                180;
fastcgi_read_timeout                180;
fastcgi_buffer_size                128k;
fastcgi_buffers                        256 16k;
fastcgi_max_temp_file_size        0;
fastcgi_busy_buffers_size        256k;
fastcgi_temp_file_write_size        256k;

fastcgi_pass        127.0.0.1:9000;

6. 配置PHP-FPM:
# ------------------------------------------------
listen = 127.0.0.1:9000
rlimit_files = 65535
# ------------------------------------------------

8. 系统优化:
# set the open files at same time
# ------------------------------------------------
echo -ne "
*               hard    nofile          65535
*               soft    nofile          65535
" >> /etc/security/limits.conf
# ------------------------------------------------

# sysctl.conf
# ------------------------------------------------
echo -ne "
net.ipv4.tcp_fin_timeout = 10
net.ipv4.tcp_keepalive_time = 1200
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_timestamps = 1
net.ipv4.tcp_synack_retries = 1
net.ipv4.tcp_syn_retries = 1
net.ipv4.tcp_tw_recycle = 1
net.core.somaxconn = 2048
net.core.netdev_max_backlog = 2000
" >> /etc/sysctl.conf
# ------------------------------------------------

# sysctl -p

论坛徽章:
0
5 [报告]
发表于 2013-02-07 00:12 |只看该作者
fastcgi_pass        127.0.0.1:9000;  和  fastcgi_pass    unix:/tmp/php.sock 应该不会引起502吧

论坛徽章:
0
6 [报告]
发表于 2013-02-07 06:56 |只看该作者
回复 5# jagel

负载较高时直接用端口连接更稳定些

   

论坛徽章:
0
7 [报告]
发表于 2013-02-07 13:47 |只看该作者
回复 6# llzqq
哦谢谢


   

论坛徽章:
1
处女座
日期:2014-01-21 13:20:51
8 [报告]
发表于 2013-02-20 10:18 |只看该作者
一般都是php-cgi的原因,楼主,怎样解决的呢?

论坛徽章:
1
处女座
日期:2014-01-21 13:20:51
9 [报告]
发表于 2013-02-20 10:20 |只看该作者
我以前用LNMP也经常出现这样情况,换了高配的服务器就没有了。可能与硬件也有关的。

论坛徽章:
0
10 [报告]
发表于 2013-02-20 11:23 |只看该作者
我解决过一次502错误,错误的原因是memory_limit设置的太小,原128M,个别程序跑超了128M,就报502,后改为512,就OK了。

内存大小设置的到底合适不合适

1、看php-fpm错误日志,若是内存不够会有超出内存的限制。
2、top实时查看RES列的值,若是接近memory_limit,就表示memory_limit已经设置的小,即使php-fpm错误日志中没有提示内存不足的信息。

出现502,多数要与开发人员一起沟通解决。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP