全球主机交流论坛

标题: php-fpm进程数量调控问题 [打印本页]

作者: Zeraba    时间: 2012-8-5 22:51
标题: php-fpm进程数量调控问题
本帖最后由 Zeraba 于 2012-8-5 23:40 编辑

近期准备做一个小站

正在调控vps

结合下近段时间在论坛上学习的知识调配了下

用webbench测试


webbench -c 1000 -t 45 http://www.xxx.net/
Webbench - Simple Web Benchmark 1.5
Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software.

Benchmarking: GET http://www.xxx.net/
1000 clients, running 45 sec.

Speed=3062 pages/min, 310521 bytes/sec.
Requests: 2297 susceed, 0 failed.



webbench -c 2000 -t 45 http://www.xxx.net/
Webbench - Simple Web Benchmark 1.5
Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software.

Benchmarking: GET http://www.xxx.net/
2000 clients, running 45 sec.

Speed=3080 pages/min, 312371 bytes/sec.
Requests: 2310 susceed, 0 failed.



vps是256小小鸡
nginx+mysql  程序是wp,做过缓存设置


看到并发从1000到2000的时候   requests 并没有改变太多   我是不是应该增大php-fpm进程?
现在的设置

pm = dynamic
pm.max_children = 10
pm.start_servers = 3
pm.min_spare_servers = 2
pm.max_spare_servers = 3


2000并发的时候
ps -ef | grep php-fpm | awk '{ print $2 }'

只看到6个进程

是不是dynamic模式下php-fpm的进程=start_servers+spare_servers?


咔咔 找到点资料
pm.max_children ,子进程最大数
pm.start_servers ,启动时的进程数
pm.min_spare_servers ,保证空闲进程数最小值,如果空闲进程小于此值,则创建新的子进程
pm.max_spare_servers ,保证空闲进程数最大值,如果空闲进程大于此值,此进行清理

2000并发按理说php-fpm应该跑满了,怎么不是10?   10-2也应该是8不是...
不是很理解上面的说明 求科普

上传网站log   目测的确没有502
(, 下载次数: 337)


作者: 单手摘月    时间: 2012-8-5 22:53
提示: 作者被禁止或删除 内容自动屏蔽
作者: Zeraba    时间: 2012-8-5 23:06
单手摘月 发表于 2012-8-5 22:53
怎样优化的啊?

我是参考hyper cache 弄的~
作者: 单手摘月    时间: 2012-8-5 23:07
提示: 作者被禁止或删除 内容自动屏蔽
作者: mmdmm    时间: 2012-8-5 23:10
默认就行
作者: Zeraba    时间: 2012-8-5 23:13
单手摘月 发表于 2012-8-5 23:07
1000线程webbench,网站还能打开么?

嗯 2000的时候都可以 top 看cpu占用是36% 网页也没有502
作者: zidane    时间: 2012-8-5 23:21
提示: 作者被禁止或删除 内容自动屏蔽
作者: Zeraba    时间: 2012-8-5 23:38
zidane 发表于 2012-8-5 23:21
你打开网站log看看是不是全都502,是的话就不用优化这个了

没有502 网站也正常打开 这个我还是知道的 要是502我就不倒腾了
稍后上传log
作者: Zeraba    时间: 2012-8-6 13:19
悄悄的自己顶上去....
作者: zhucy    时间: 2012-8-6 18:17
问题是,你get的/,用没用到php呢~~~....
/如何是一个静态的。nginx不会透给php-fpm~~~

作者: Zeraba    时间: 2012-8-6 18:21
zhucy 发表于 2012-8-6 18:17
问题是,你get的/,用没用到php呢~~~....
/如何是一个静态的。nginx不会透给php-fpm~~~
...

嗯?webbench 还可以用其他方式进行测试么?  我测试的是wp的首页 没有做静态化 只做了缓存 首页动态 top中看到PHP-FPM进程cpu 都占用了

难不成不是这么测试的?
作者: zidane    时间: 2012-8-6 19:51
提示: 作者被禁止或删除 内容自动屏蔽
作者: 单手摘月    时间: 2012-8-6 20:04
提示: 作者被禁止或删除 内容自动屏蔽
作者: Zeraba    时间: 2012-8-6 21:16
zidane 发表于 2012-8-6 19:51
成功连接数量这么多,必然是哪个地方生成了静态
既然说了设置了缓存,那很正常了,这些请求都是从缓存里 ...

   果然都是缓存
作者: Zeraba    时间: 2012-8-6 21:16
单手摘月 发表于 2012-8-6 20:04
试试webbench -c 1000 -t 45 http://www.xxx.net/wp-admin/

尼玛 终于挂了!   下次研究下后台的缓存
作者: 单手摘月    时间: 2012-8-6 21:17
提示: 作者被禁止或删除 内容自动屏蔽
作者: Zeraba    时间: 2012-8-6 21:27
单手摘月 发表于 2012-8-6 21:17
其实还有很多页面没缓存的。。。


嗯 谢谢提醒




欢迎光临 全球主机交流论坛 (https://hostloc.gdisk.cf/) Powered by Discuz! X3.4