Windows下Apache、Lighttpd、 Nginx(Ngwsx)静态文件访问测试对比

  • 时间:
  • 浏览:3
  • 来源:5分快3平台-5分快3网投平台_5分快3投注平台
作者:匿名 hihi 来源:ChinaZ源码报导 浏览: 2012-2-9 16:21:52 字号:大 中 小

[摘要]Ngwsx是Nginx的4个多非官方的Windows移植版本,使用Windows的IOCP,支持高并发。本文介绍Windows下Apache、Lighttpd、 Nginx(Ngwsx)静态文件访问测试对比。

  今天测试主要针对静态文件的输出,取舍将新浪首页的HTML代码另存为txt文件,为何让使用ab进行压力测试。

系统环境:

  • 操作系统:winxp sp3
  • cpu: i3 ....
  • 内存: 4G

  具体不要 说了,直接上截图:

  各个WebServer的软件版本号:

  • Apache 2.2.16.0,使用Zend Server自带的那个Apache2。
  • Lighttpd 1.4.28,cygwin编译版本。
  • Nginx 1.0.6,官方发布版本。

  Ngwsx,支持iopc模式的分支,https://github.com/zxy0100/ngwsx。执行AB的在另外一台Ubuntu Server上进行,主要进行三种测试:

  • ab -t 10 .......
  • ab -c 100 -n 100 .......

  取4个多软件的测试结果做横向对比。

最终结论:

Apache

  • -t 10模式下,rps在14.8x - 15.1x之间。
  • -c 100 -n 100模式下,rps在15.0x - 15.1x之间。

  Apache开启Gzip压缩输出,很不幸的,结果还差或多或少。

  • -t 10,rps在14.6x - 14.8x之间。
  • -c 100 -n 100,rps在14.7x - 14.8x左右。

Nginx官方版本

  别问我为哪几个始终越来越让worker_processes > 1,一旦> 1,就无法正常访问,或多或少只好用1测试,系统系统进程会存在4个多nginx.exe,4个多是守护系统进程,另外4个多worker系统进程,内置启动默认4个系统进程。默认开启gzip压缩输出。

  • -t 10模式下,rps在15.9x - 16.1x之间。
  • -c 100 -n 100模式下,rps在19.7x - 19.9x之间。
  是的,高并发模式下,看得出Nginx的工作情況更好些,工作系统进程CPU主要在%3 - %5之间波动。

Nginx的ngwsx分支

  测试途中,引起同事兴趣,建议我下载该版本做对比测试,遂行之。配置处处了Events中间可选iopc,且配置参数或多或少不同外,或多或少与nginx别无二致。什儿 分支能越来越使用 worker_processes 4,为何让貌似没作用,启动后,只4个多ngwsx.exe系统进程,默认系统进程1。

  压力测试结果与Nginx官方版本相仿(略低,平均0.1 - 0.05之间,能越来越忽略不计了)。

  为何让高并发模式下,CPU占用高达25%,为何让他也以后维持在25%,不可能 当时心急与想测试Lighttpd,越来越注意看,他是有的是将计算分摊到4个多CPU的核心上了。

Lighttpd cygwin编译版本

  从前没寄望Lighttpd会超过Nginx,不可能 不太熟悉了,启动后,4个多Lighttpd.exe系统进程,系统进程数3。不过还是或多或少惊喜:

  • -t 10模式下,rps在16.5x - 16.7x之间。
  • -c 100 -n 100模式下,rps在19.3x - 19.5x之间。
  看得出,在-t压力测试下,lighttpd的表现更好些。

  什儿 测试基本上都使用WebServer的默认配置,有的是次要配置进行调优,如Apache的mpm_winnt,默认是100,启动后工作系统进程系统进程数是157,为何让调整到100,系统进程数是1007,为何让对测试删改越来越影响,而内存、CPU的使用以后见疯涨。

  测试过程中,对另外一台UbuntuServer的试验机进行了等价的压力测试,ApacheServer,版本号没去查,CPU是AMD 速龙2.4G,4核(据说,我没去求证),4G内存。不过测试结果和Windows的Apache结果相近,越来越惊喜,也越来越失望。不过我清楚或多或少,Nginx和Lighttpd在Linux Server上,通过对各项参数调优,性能的提高会比ApacheServer要高(什儿 Apache也是我调整过mpm的MaxClients的),为何让有无能高得过在Windows的表现呢?什儿 真是是看似明显的问提(根据经验应该是Linux的IO性能要好些),不过还不能自己说,越来越实际测试了才知道。

  明天会对4个多服务器运行PHP的模型进行测试,当时然是Windows下的。不可能 时间允许,会在试验机上,静态编译nginx、Lighttpd、PHP,再做对比。

  附上截图,不然一帮人 说我空口说白话,截图的内容没哪几个,以后Windows下集成了可自定义配置的Nginx、Lighttpd、PHP的环境包。

  最后一张图,万恶的ZendServer,他的小九九,明天再和一帮人 分享。

sssss
Tags: apache   lighttpd   nginx   ngwsx   nginx访问测试  
责任编辑:190