免费注册 查看新帖 |

Chinaunix

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

lnmp环境压测出现php错误,求助 [复制链接]

论坛徽章:
1
IT运维版块每日发帖之星
日期:2016-07-29 06:20:00
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2016-12-27 16:22 |只看该作者 |倒序浏览
在一次下单购物的场景压测中,nginx访问日志每出现一次502,相应的nginx错误日志就报如下内容:

2016/12/21 14:36:04 [error] 11681#11681: *1561066 recv() failed (104: Connection reset by peer) while reading response header from ups
tream, client: XXXXXXXX, server: XXXXXXXXXX, request: "POST /XXXX/XXXXX/XXXXXXXX HTTP/1.1", upstream: "fastcgi://unix:/d
ev/shm/php-fpm.sock:", host: "XXXXXXXXX"     

php的错误日志跟着报
[23-Dec-2016 18:00:13] WARNING: [pool www] child 9387 exited on signal 7 (SIGBUS) after 2521.682074 seconds from start
经多方查询修改参数后再次压测报错依然如此:在4核 8G的ecs上php配置如下:

cat /etc/php-fpm.d/www.conf
[www]
listen=/dev/shm/php-fpm.sock
listen.allowed_clients = 127.0.0.1
listen.backlog = 1024
listen.owner = www
listen.group = www
user = www
group = www
pm = dynamic
pm.max_children = 300
pm.start_servers = 250
pm.min_spare_servers = 190
pm.max_spare_servers = 250
pm.max_requests = 4000
pm.status_path = /XXXXX
;request_terminate_timeout = 0s
;request_slowlog_timeout = 2002s
;slowlog = /var/log/php-fpm/www-slow.log
php_admin_value[error_log] = /var/log/php-fpm/www-error.log
php_admin_flag[log_errors] = on
php_value[session.save_handler] = files
php_value[session.save_path]    = /var/lib/php/session
php_value[soap.wsdl_cache_dir]  = /var/lib/php/wsdlcache


php.ini中一些相关的参数
max_execution_time = 60
max_input_time = 60
default_socket_timeout = 60
ibase.timestampformat = "%Y-%m-%d %H:%M:%S"
ibase.timeformat = "%H:%M:%S"
mysql.connect_timeout = 60
session.cookie_lifetime = 0
session.gc_maxlifetime = 1440


nginx中一些相关的参数
        fastcgi_connect_timeout 300;
        fastcgi_send_timeout 300;
        fastcgi_read_timeout 300;
        fastcgi_buffer_size 64k;
        fastcgi_buffers 4 64k;
        fastcgi_busy_buffers_size 128k;
        fastcgi_temp_file_write_size 128k;
来一枚大神给参考参考。多谢。

论坛徽章:
0
2 [报告]
发表于 2016-12-30 22:25 |只看该作者
查502原因,还需php-fpm的日志。
个人觉得 , 可以重点优化一这个请求地址的PHP 逻辑 : request: "POST /XXXX/XXXXX/XXXXXXXX HTTP/1.1"
php-fpm进程长时间僵死一般原因:
1. php连接数据库读写逻辑没写好;
2. php进程发起对外Http请求,但又没有控制好超时时间;
3. 高并发还在使用文件Session, 导致进程有Session锁...

论坛徽章:
0
3 [报告]
发表于 2016-12-30 23:22 |只看该作者
查502原因,还需php-fpm的日志。
个人觉得 , 可以重点优化一这个请求地址的PHP 逻辑 : request: "POST /XXXX/XXXXX/XXXXXXXX HTTP/1.1"
php-fpm进程长时间僵死一般原因:
1. php连接数据库读写逻辑没写好;
2. php进程发起对外Http请求,但又没有控制好超时时间;
3. 高并发还在使用文件Session, 导致进程有Session锁...
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP