php+apache 压力负载下的确认

 为了确认,在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

 

负载情况如下

 

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

这时候,访问正常的url 。

发现可以正常访问。

结论:

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

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

 

posted @ 2017-05-24 16:57  蜗牛码  阅读(240)  评论(0编辑  收藏  举报