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

  • 时间:
  • 浏览:0
作者:匿名 hihi 来源:ChinaZ源码报导 浏览: 2012-2-9 16:21:52 字号:大 中 小

[摘要]Ngwsx是Nginx的另六个非官方的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 .......

  取另六个软件的测试结果做横向对比。

最终结论:

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测试,系统程序运行会地处另六个nginx.exe,另六个是守护程序运行,另外另六个worker程序运行,内置启动默认另六个程序运行。默认开启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,假使 貌似没作用,启动后,都都都都上能 了另六个ngwsx.exe程序运行,默认程序运行1。

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

  假使 高并发模式下,CPU占用高达25%,假使 他也全都维持在25%,就让当时心急与想测试Lighttpd,没人注意看,他是也有将计算分摊到另六个CPU的核心上了。

Lighttpd cygwin编译版本

  原来没寄望Lighttpd会超过Nginx,就让不熟悉了,启动后,另六个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性能要好些),不过还不难 说,都都都都上能 了实际测试了才知道。

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

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

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

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