php socket keepalive,使用keepalive和fastcgi_keep_conn打开Nginx php-fpm时出错
我正在尝试使用Nginx php-fpm与nginx选项'keepalive'和'fastcgi_keep_conn on'来保持tcp连接在它们之间保持活动状态,但在服务几百个请求后面临错误 "104: Connection reset by peer" .
在tcp端口(9000)或unix socket(/var/run/php5-fpm.socket)上启动php-fpm可以看到这些错误 .
这里的内容是尽可能减少Nginx php-fpm之间的新tcp / socket连接开销,并尽可能地重用连接 . 请注意,我保持nginx'keepalive 20',其中php-fpm'pm.max_requests = 0'和'pm.start_servers = 50' .
有人可以帮我解决这个错误吗?
使用的软件:
nginx version: nginx/1.4.7
php-fpm version: 5.4.25 / 5.6.6
PHP-FPM错误日志条目:
WARNING: [pool www] child 15388 exited on signal 15 (SIGTERM) after 2245.557110 seconds from start
NOTICE: [pool www] child 18701 started
Nginx错误:
用php-fpm监听端口 9000
[error] 32310#0: *765 readv() failed (104: Connection reset by peer) while reading upstream, client: 10.10.133.xx, server: 192.168.28.xxx, request: "GET /test.php HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "10.10.133.xxx"
用php-fpm监听套接字 /var/run/php5-fpm.socket
[error] 14894#0: *383 recv() failed (104: Connection reset by peer) while reading response header from upstream, client: 10.10.133.xx, server: 192.168.28.xxx, request: "GET /test.php HTTP/1.1", upstream: "fastcgi://unix:/var/run/php5-fpm.socket:", host: "10.10.133.xxx"
以下是nginx vhost conf
upstream fastcgi_backend {
server 127.0.0.1:9000;
#server unix:/var/run/php5-fpm.socket;
keepalive 30;
}
server {
listen 80;
server_name 10.10.xxx.xxx;
access_log /tmp/ngx_access_80.log;
error_log /tmp/ngx_error_80.log;
location ~ \.php$ {
root /var/www/test/;
include fastcgi_params;
fastcgi_pass fastcgi_backend; //upstream set above
fastcgi_keep_conn on; #Test for keepalive connection to php-fpm
fastcgi_buffer_size 16k;
fastcgi_buffers 4 16k;
}
}
以下是php-fpm.conf
[global]
pid = /var/run/php-fpm-9000.pid
error_log = /var/log/php-fpm-9000.log
[www]
listen = 0.0.0.0:9000
user = daemon
group = daemon
rlimit_files = 60000
pm = dynamic
pm.max_requests = 0
pm.max_children = 500
pm.start_servers = 50
pm.min_spare_servers = 40
pm.max_spare_servers = 90
php socket keepalive,使用keepalive和fastcgi_keep_conn打开Nginx php-fpm时出错相关推荐
- keepalive和keep-alive
keepalive和keep-alive 1.Keep-Alive HTTP 的 Keep-Alive 也叫 HTTP 长连接,该功能是由应用程序实现的,可以使得用同一个 TCP 连接来发送和接收多个 ...
- 热拉显示服务器端口错误,打开端口 50,000 上服务器 /192.168.1.100 的套接字时出错,消息为:Connection timed out: connect。 ERROR解决办法...
打开端口 50,000 上服务器 /192.168.1.100 的套接字时出错,消息为:Connection timed out: connect. ERROR解决办法 打开端口 50,000 上服务 ...
- 驱动人生安装驱动计算机无法启动,驱动人生打开时出错怎么办
驱动人生打开时出错请更新到最新版本的驱动人生. 驱动人生是一款免费的驱动管理软件,实现智能检测硬件并自动查找安装驱动,为用户提供最新驱动更新,本机驱动备份.还原和卸载等功能.软件界面清晰,操作简单,设 ...
- 在使用Vs2013打开Vs2008的解决方案时出现了以下错误:此版本的应用程序不支持其项目类型(.csproj)...
在使用Vs2013打开Vs2008的解决方案时出现了以下错误: 无法打开 因为此版本的应用程序不支持其项目类型(.csproj). 在网络上找到解决方案: 命令行或者Vs自带的命令提示符输入:deve ...
- Office 2003 打开RMS权限保护文档时出错
公司内装了RMS服务器,12月11日突然出现问题,Office 2003 打开RMS权限保护文档时出错,截屏如下图. 网上找不到相关文献,开始以为是RMS服务问题,重装RMS服务器问题依旧,百思不得其 ...
- vs2003 打开VS.NET项目时遇到 “无法从web服务器获取项目文件” 解决方案
摘自:http://shang.javaeye.com/blog/324043 问题:打开VS.NET项目时遇到"无法从web服务器获取项目文件" 解决方案: 1.确保你的IIS里 ...
- Socket的通信是基于连接的通信,通信结束时,Socket将不再有用,关闭时为了节约宝贵的系统资源
Socket的通信是基于连接的通信,通信结束时,Socket将不再有用,关闭时为了节约宝贵的系统资源. package p1;import java.io.DataInputStream; impor ...
- 打开VS项目时出错 MSBuild。。。
打开VS项目时出错,项目不能加载(下面信息中 \v14.0\8.2 有些开发环境下可能是\v14.0\8.1) The imported project "C:\Program Fil ...
- C语言:采用交互式方式打开指定的文件,若文件打开成功,则显示该文件的大小,并显示文件内容,若文件打开失败,则提示出错信息
/*采用交互式方式打开指定的文件,若文件打开成功,则显示该文件的大小,并显示文件内容,若文件打开失败,则提示出错信息*/ #include <stdio.h> #include <s ...
最新文章
- python下requests的安装、测试、入门资料、官方资料
- js 对表格的动态操作(动态添加行,删除该行,在指定位置添加控件)
- Raspberry 4B安装wiringPi库 和 python-dev包
- 使用Python实现一个简单的接口服务
- 一种在旧代码上增加新需求的重构模式
- 张亚勤:终日“闭关”读论文,思考终极算法
- ArcGis如何插入图片_如何在CAD图纸中以OLE形式插入图片?
- 终于来了!Win11 预览版镜像提前出世(附 ISO 下载)
- ENSP配置华为路由器配置SSH登陆
- 使用PHP制作 简易员工管理系统之三(管理员登陆界面以及数据库验证)
- 北航超算运行matlab,工信部网:北航学子荣获ASC19世界大学生超算竞赛最高计算性能奖...
- vscode配置运行php项目完整版
- 基于遗传算法的柔性车间调度优化研究附Matlab代码
- 中秋佳节之际祝各位网友身体健康,心情愉快!
- vue实现图片轮播二
- 全球游戏收入将随着电影电视改编作品的不断增多而达到惊人水平 | 美通社头条...
- 今天是微信7周年 7年之痒 一切都已被改变
- elasticsearch你了解多少?
- 入侵检测系统IDS工作原理笔记
- echart 地图加阴影效果 四川地图为例