免费注册 查看新帖 |

Chinaunix

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

[Web] netstat -anop | grep "php-cgi" | wc -l 一直是5个 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-12-30 12:13 |只看该作者 |倒序浏览
10可用积分
参考 张宴 http://blog.s135.com/nginx_php_v5/  和本论坛精华贴的配置

nginx + php 5.2.10 php-cgi 模式

即使服务器负载再高,php-cgi使用的数值也不会提升,

netstat -anop | grep "php-cgi" | wc -l 一直是5个
(2010-1-1补充, 实施到正式环境, 看到TOP全是php-cgi进程时,作为纯后端服务器负责联网的依然只有5个进程,做前端时进程数量会上升,现在是14左右,比较纳闷,)

配置里面max数值改为64,200,400都没有区别.

在测试和正式环境下均如此,可能是什么方面的配置影响?有人知道吗

硬件:
生产机器:
E5420*2,8G
测试机器:
E5520*2,12G,

centos 6.4 64bit

worker_processes 16;
worker_rlimit_nofile 409600;
  worker_connections 409600;

ulimit 409600

style=static
<value name="max_children">200</value>
<value name="max_requests">102400</value>

另外有个情况,在webbench测试时,不管测试静态动态,TIME_WAIT都非常高,即使-c 10 的参数,也可以跑满6万个TIME_WAIT

net.ipv4.ip_forward = 0
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.default.accept_source_route = 0
kernel.sysrq = 0
kernel.core_uses_pid = 1
net.ipv4.tcp_syncookies = 1
kernel.msgmnb = 65536
kernel.msgmax = 65536
kernel.shmmax = 68719476736
kernel.shmall = 4294967296
net.ipv4.tcp_timestamps = 1
net.ipv4.tcp_max_syn_backlog = 65536
net.core.netdev_max_backlog = 32768
net.core.somaxconn = 32768
net.core.wmem_default = 8388608
net.core.rmem_default = 8388608
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
net.ipv4.tcp_timestamps = 0
net.ipv4.tcp_synack_retries = 2
net.ipv4.tcp_syn_retries = 2
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_mem = 94500000 915000000 927000000
net.ipv4.tcp_max_orphans = 3276800
net.ipv4.tcp_fin_timeout = 30
net.ipv4.tcp_keepalive_time = 120
net.ipv4.ip_local_port_range = 1024  65535

[ 本帖最后由 meyu 于 2010-1-1 13:02 编辑 ]

论坛徽章:
0
2 [报告]
发表于 2009-12-30 13:57 |只看该作者

回复 #1 meyu 的帖子

spawn-fcgi -a 127.0.0.1 -p 9000 -C 5 -u www-data -g www-data -f /usr/bin/php5-cgi
这里面的-C参数指定的子进程的数量,楼主改下应该就可以了吧

论坛徽章:
2
狮子座
日期:2013-08-26 15:25:32金牛座
日期:2013-09-05 15:45:36
3 [报告]
发表于 2009-12-30 19:38 |只看该作者

php-cgi的进程数就是-c 的那个参数指定
如果系统是FreeBSD的话则是spawn_fcgi_children="XX"

论坛徽章:
0
4 [报告]
发表于 2010-01-01 12:58 |只看该作者
我用的好像不是 spawn-fcgi , 是php-fpm的..谢谢楼上两位

论坛徽章:
0
5 [报告]
发表于 2010-01-04 10:41 |只看该作者
timeout多可以把下面的参数设小点

net.ipv4.tcp_fin_timeout = 1



php-fpm的话要改php-fpm.conf的配置文件,在php的安装目录下面        <value name="max_children">200</value改成200试试

[ 本帖最后由 wangc0727 于 2010-1-4 10:43 编辑 ]

论坛徽章:
0
6 [报告]
发表于 2010-01-27 15:01 |只看该作者
在php-fpm里有这么一行
<value name="MinSpareServers">5</value>

这个5应该就是这里指定的,加大这个数字对性能的影响我也不清楚

<value name="max_children">80</value> 这里的子进程是要看访问情况和内存来设置的

在这个配置中主要涉及到的就是上面两个参数,还有一个是nginx的工作进程,他们有什么关联,想和大家结合实际应用来讨论

论坛徽章:
0
7 [报告]
发表于 2010-01-30 20:22 |只看该作者
两个参数指定的子进程

论坛徽章:
0
8 [报告]
发表于 2010-12-06 09:49 |只看该作者
回复 1# meyu


    我也是这个情况啊!
改了MinSpareServers的数量也还是一样啊
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP