php+apache 压力负载下的确认

时间:2022-06-05 20:40:11

 为了确认,在cpu负载大的情况下,页面是否正常处理。

测试用压力代码(参考bench.php的一个函数):

function nestedloop($n) {
$x = 0;
for ($a=0; $a<$n; $a++)
for ($b=0; $b<$n; $b++)
for ($c=0; $c<$n; $c++)
for ($d=0; $d<$n; $d++)
for ($e=0; $e<$n; $e++)
for ($f=0; $f<$n; $f++)
$x++;
print "$x\n";
}

nestedloop(30) ;

 ab  -n 1000  -c 5 ip/index.php

 

负载情况如下

php+apache 压力负载下的确认

 

CPU已经100%了,没有空闲。

这时候,访问正常的url 。

发现可以正常访问。

结论:

     apache 在处理负载的进程是5个,新的请求来时,新生成一个httpd 进程。linux 进程调度也会给新的httpd 进程执行的cpu 时间。

     所以看似忙的要死,但是CPU执行时间有的话且简单页面不需要太多资源的话,是可以正常处理的。