开发者社区> 问答> 正文

用PTS测试APACHE两种工作模式性能


apache2.2.X主要支持两种工作模式:prefork模式和worker模式
    prefork模式:
    这个多路处理模块(MPM)实现了一个非线程型的、预派生的web服务器,它的工作式类似于Apache 1.3。它适合于没有线程安全库,需要避免线程兼容性问题的系统。它要求将每个请求相互独立的情况下最好的MPM,这样若一个请求出现问题就不会影响到其他请求。这种模式是APACHE默认的工作模式,基本上传统的APACHE环境配置软件/面板都采用的这种模式来配置APACHE。这种模式需要的cpu和memory资源也稍多于woker
  worker模式:
此多路处理模块(MPM)使网络服务器支持混合的多线程多进程。由于使用线程来处理请求,所以可以处理海量请求,而系统资源的开销小于基于进程的MPM。但是它也使用了多进程,每个进程又有多个线程,以获得基于进程的MPM的稳定性。
apache 2.4.x还增加了event模式,这个工作模式和nginx是相似的。但apache2.4要等到centos 7才能使用。
下面是我用一台ECS服务器,512M内存,1M带宽。对APACHE这两种工作模式进行压力测试结果。
具体测试配置,可以参考我前几天写的帖子:http://bbs.aliyun.com/read/167183.html?spm=5176.7189909.3.15.C0KQUa

测试内容:
测试phpinfo生成的页面,考查两种模式下PHP的执行能力。

PHPINFO页面信息
prefork模式:
[attachment=58702]
[attachment=58703]

worker模式:
[attachment=58692]
[attachment=58693]

PTS结果概览
perfork模式
能看到这种模式下有失败的访问量。
[attachment=58704]
worker模式
能看到这种模式下没有失败的访问量。
[attachment=58694]

PTS结果--业务指标
perfork模式
[attachment=58705]
从图中看,约有50个并发访问量时,出现了页面访问错误。
[attachment=58706]
[attachment=58707]
[attachment=58708]
worker模式
[attachment=58695]
[attachment=58696]
[attachment=58697]
[attachment=58698]

PTS结果--ECS指标
perfork模式
[attachment=58699]
[attachment=58700]
[attachment=58701]

worker模式
[attachment=58709]
[attachment=58710]
[attachment=58711]

测试结果
图太多了,希望我没有传错图片。
从上图看到,apache在worker模式下的性能,比perfork模式的性能强劲不少。
但很多工具,都将apache编译为perfork模式,这将导致apache的强劲性能没有体现出来。
如果查看apache是否运行在worker模式下,简单的办法就是:
[root@ ~]# pstree
init─┬─aegis_quartz───4*[{aegis_quartz}]
     ├─crond
     ├─dbus-daemon
     ├─httpd.worker─┬─httpd.worker
     │              └─httpd.worker───26*[{httpd.worker}]


从标红的字体处,能看到apache是工作在worker模式下的。
如果配置apache运行在worker模式下?
自己搜索apache worker能找到配置方法。或用我的"Linux管理大师",这个软件默认将apache配置为worker模式。下载地址:
http://bbs.aliyun.com/read/164988.html?spm=5176.7189909.0.0.sIkg0c





展开
收起
bendchen 2014-08-14 13:19:34 9025 0
2 条回答
写回答
取消 提交回答
  • 您的无私奉献精神值得我们学习!向您致敬!
    2014-08-31 23:46:16
    赞同 展开评论 打赏
  • 学习到了!!!
    2014-08-14 14:35:00
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
移动互联网测试到质量的转变 立即下载
给ITer的技术实战进阶课-阿里CIO学院独家教材(四) 立即下载
F2etest — 多浏览器兼容性测试整体解决方案 立即下载

相关镜像