我在使用 nginx + php7.0-fpm 时遇到了这个问题。
测试是在没有安装其他服务的纯 php 服务器上完成的。
我收到以下警告。
WARNING: [pool www] seems busy (you may need to increase pm.start_servers, or pm.min/max_spare_servers), spawning 16 children, there are 0 idle, and 35 total children
它大大降低了服务器的速度。
我正在使用AWS t2.medium instance
- 2vCPU 和 4GB RAM。
我的php7.0-fpm/www.conf
设置看起来像
pm = dynamic
pm.max_children = 50
pm.start_servers = 20
pm.min_spare_servers = 10
pm.max_spare_servers = 20
pm.max_requests = 500
我有一个我用来测试的 laravel 应用程序,它只是回复{"m":"OK"}
请求。
我测试了使用apache2-utils
ab -n 1000 -c 50 https://mytestserver.com/
测试响应ab
-> https://ghostbin.com/paste/528tw
我使用htop
.
ab
在测试期间,两个 CPU 使用率很快达到 100% 。但是,内存使用量仅为400MB
.
为什么CPU占用太多?我该怎么做才能从 php-fpm 获得警告?
我究竟做错了什么?请指导我完成。
谢谢。