nginx+php-fpm怎么配置才可以每秒处理能力?
centos,24核32G
ab压力测试工具,1000并发客户端请求页面5万次
lnmp环境下,压力测试静态html处理能力达到14000次每秒
(这个静态处理能力我也想提升,主要是服务器资源还剩余的多)
ab -c 1000 -n 50000 -k http://127.0.0.1/index.html
Concurrency Level: 1000
Time taken for tests: 3.387 seconds
Complete requests: 50000
Failed requests: 0
Write errors: 0
Keep-Alive requests: 50000
Total transferred: 23341512 bytes
HTML transferred: 11619792 bytes
Requests per second: 14764.11 [#/sec] (mean)
Time per request: 67.732 [ms] (mean)
Time per request: 0.068 [ms] (mean, across all concurrent requests)
Transfer rate: 6730.79 [Kbytes/sec] received
================================
但是测试一个很简单的PHP页面(只有echo语句)才3000次每秒
Concurrency Level: 1000
Time taken for tests: 12.982 seconds
Complete requests: 50000
Failed requests: 0
Write errors: 0
Keep-Alive requests: 0
Total transferred: 13250265 bytes
HTML transferred: 3450069 bytes
Requests per second: 3851.56 [#/sec] (mean)
Time per request: 259.635 [ms] (mean)
Time per request: 0.260 [ms] (mean, across all concurrent requests)
Transfer rate: 996.76 [Kbytes/sec] received
php-fpm的状态页大概如下:最大800的php-fpm进程实际最高用了不到30的进程
在压力测试的期间,top命令查看机器的cpu和内存,cpu占用不到8%,内存占用不到20%
listen queue: 0 max listen queue: 0 listen queue len: 0 idle processes: 355 active processes: 14 total processes: 369 max active processes: 269 max children reached: 0 slow requests: 0
php-fpm开的进程是800,但是压力测试的时候观察php-fpm状态页显示的活动进程只有300左右,请求完成都是200状态,但是秒处理能力太弱了,感觉php-fpm没有完全启动并发处理,按道理应该是在有请求的时候应该全部启动运行,有人知道这个怎么提高php处理能力么??
我想要压榨服务器的性能啊,这感觉没有跑起来啊。。有大神知道的给我指导下拉,,谢谢。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(9)
感谢你!谢谢
引用来自“取名字总是失败”的评论
start_servers = 500
max_children = 800
request_terminate_timeout = 0
max_requests = 0
谢谢大哥,回来看评论
回复
涨姿势了
start_servers = min_spare_servers + (max_spare_servers - min_spare_servers) / 2
引用来自“取名字总是失败”的评论
start_servers = 500
max_children = 800
request_terminate_timeout = 0
max_requests = 0
start_servers = 500
max_children = 800
request_terminate_timeout = 0
max_requests = 0
引用来自“mickelfeng”的评论
php-fpm进程数并不是开得越多越好。php-fpm 进程同一时间只能处理一个请求。
php-fpm进程数并不是开得越多越好。php-fpm 进程同一时间只能处理一个请求。