青青子衿, 悠悠我心, 但为君故, 沉吟至今
« 博客迁移到新的服务器和网络在Google Blogger上定期发布文章 »

Windows服务器下的IIS和Apache性能比较

  目前最流行的建立网站的服务工具就要属Apache与IIS了。那么他们之间到底哪个性能更好呢?到底哪个工具才是最适合我们的呢?最近我也对这方面的问题进行了一番研究。

  如果是基于Linux平台的话,那不必多说自然是Apache了,因为IIS只能在Windows环境下运行,而Linux+Apache的整体性能、安全性、通用性也都强于Windows 2003+IIS 6.0,不过如果在Windows 2003的服务器上,IIS 6.0和Apache 2.2.6到底哪个性能最好呢?

  我于是做了一个测试,在不同型号的Windows 2003服务器上安装IIS和Apache,比较两者的性能,最基本的比较是静态HTML网页读取的比较,在我的测试之中,我发现Windows 2003下的IIS 6和Apache 2.2.6在静态HTML文件的处理性能上基本是相同的。

  测试环境:三台不同的服务器,CPU分别是P4 2.8E超线程,酷睿2 E6300,至强 5110,软件分别安装的IIS6和Apache 2.2.6.三台服务器都放了一个40K的HTML文档,我使用WAS(Web Application Stress Tool),开100个线程对这三台服务器进行吞吐量处理测试,测试其每秒钟处理线程的能力(Requests per Second),测试时间为1分钟。

  对于P4 2.8E和E6300,无论对于IIS和Apache,两者的点击数都基本上是250,每秒钟处理响应的数目大约为4.17.这说明对于静态HTML文件的处理能力,IIS和Apache在Windows平台下是基本相同的。

  而Intel至强5110的测试数据就相差非常大,在IIS下点击数达到了1838,每秒钟处理响应的数目达到了30.63,几乎比前两台服务器高了7倍,这说明在同样的软件环境下,即使是入门级别的CPU,Intel至强服务器也具有远远超过普通奔腾服务器的性能。

  因此得出结论,如果一个网站的大部分页面都是静态页面,并且是假设在Windows 2003服务器上的,那么IIS和Apache两者性能基本相同,要想提高网站的整体吞吐量,需要在服务器硬件上进行升级。



  除非注明,月光博客文章均为原创,转载请以链接形式标明本文地址

  本文地址:http://www.williamlong.info/archives/1297.html
  • 文章排行:
  • 1.Achin
  • 小规模测试也可略窥一斑,恐怖级应用的性能,恐怕要到实际环境中去考量了。
  • 2008/7/28 13:34:39   支持(19)反对(8) 回复
  • 4.david
  • 现在的网站大到门户,小到blog,大多数都是数据库支撑的,一般都有缓冲支持吧,所以可能研究动态网站的性能更有实际意义一些。毕竟纯静态的不是主流的实现方案
  • 2008/4/6 12:10:19   支持(15)反对(8) 回复
  • 6.wyt
  • apache并不是以性能见长,但在linux下怎么也会比IIS好,要处理静态文件,还是推荐Lighttpd or Nginx
  • 2008/4/6 0:29:16   支持(16)反对(10) 回复
  • 7.低调年华
  • 万转SCSI硬盘目前已不见往日优势
    西部数据320GB/16MB缓存(WD3200AAKS)性能超过普通万转SCSI硬盘了
  • 2008/4/6 18:45:04   支持(12)反对(6) 回复
  • 9.斑马
  • 提出问题=>设计实验=>观察结果,做出结论=》月光,不是在写论文吧!
  • 2008/4/5 21:33:17   支持(14)反对(10) 回复
  • 10.飘易博客
  • 月光的这个测试有点意思哦。至强CPU很好很强大
  • 2008/4/6 9:02:02   支持(13)反对(9) 回复
  • 11.gx
  • to 19楼:


    奔腾3代肯定有志强的,奔腾2代有没有忘记了。
  • 2008/4/6 10:13:57   支持(14)反对(10) 回复
  • 13.低调年华
  • win2k3处理PHP同样zend+eAccelerator加速
    负载上Apache2.28优于IIS6
    全能方面(php+asp)IIS6领先
    IIS7以及安装过FastCGI的IIS6暂时还不知道跑php如何~
  • 2008/4/6 18:39:46   支持(12)反对(9) 回复
  • 14.Kulaer
  • 100个知名站点 其中一个只有微软的iis 其他的都是apache
  • 2008/4/7 8:32:32   支持(12)反对(9) 回复
  • 15.johnny
  • ……博主怎么做了这么个实验……有闲心~
  • 2008/4/5 23:47:28   支持(13)反对(11) 回复
  • 16.Null
  • 继续建议月光换块SCSI硬盘再试试
  • 2008/4/6 12:19:59   支持(16)反对(14) 回复
  • 17.tony
  • 1.100个知名站点,只有一个是IIS没错,但必须要考率开发平台的因素。因此,还是一个观点,用JSP或PHP的就好好用LINUX,用.net或ASP的就好好用IIS。
    2.测试结果相近的原因有可能在于取样率过小,建议可根据不同应用级别进行测试。可能可以得出更好的结果。
    3.IIS和APACHE哪个更好,那是厂商的事。做为开发人员应该把精力放在代码,结构,数据库的设计和优化上。这才是最重要的。事实上大部分系统的瓶颈都非硬件/运行环境的问题。

  • 2008/4/8 14:51:58   支持(21)反对(19) 回复
  • 18.guest
  • 相关的研究表明,服务器在性能上提高并没有和价格成正比,性价比很低,

    造成如此大的性能差别,可能和CPU的设计用途有关,并不能简单认为服务器CPU比家用CPU性能好7倍.
  • 2008/4/5 22:12:17   支持(14)反对(13) 回复
  • 19.天猫扑涯
  • 那Apache和IIS在实际应用时有什么区别吗?
  • 2008/4/5 23:25:58   支持(16)反对(15) 回复
  • 21.TanCee
  • 对于P4 2.8E和E6300,无论对于IIS和Apache,两者的点击数都基本上是250
  • 2008/4/5 22:52:51   支持(10)反对(10) 回复
  • 24.1465966634543
  • hello ,
    楼主,你的CPU用法不对吧,Beikao帝(Http://Www.Beikaodi.Com/word/CPU.html)中的例句好像不是你这么用的
    time:12:57:14 PM
  • 2016/6/15 12:58:42   支持(0)反对(0) 回复
  • 25.lcf00023
  • 要是在Windows svr 2008 上做iis的测试和Apache的比较呢?
  • 2008/4/5 23:12:55   支持(10)反对(11) 回复
  • 27.孤山一笑
  • http://www.williamlong.info/archives/1197.html

    这个页面显示好像有问题
  • 2008/4/6 11:01:15   支持(11)反对(12) 回复
  • 28.斑马
  • Windows Server 2008已经发布了!微软的中文教程都出来了!
  • 2008/4/6 22:21:26   支持(10)反对(11) 回复
  • 30.yezi
  • 月光,不知道你有没有进行过动态页面的压力测试。
    PHP的phpinfo()函数,在ab -c 1000 -n 1000 http://xxx.xxx.xxx.xxx/phpinfo.php程序运行到820+的时候,内存占用高达1.16G,之后HTTPD崩溃并重启。。。实际运用中也是,用户并发很大的情况下,每2分钟就崩溃一次。。

    而在IIS6+PHP下,没有任何问题,ab -c 1000 -n 10000 http://xxx.xxx.xxx.xxx/phpinfo.php都能正常相应,仅仅是因为CPU高达100%而崩速度比较慢,有时候会到2s。。。

    CPU XEON 4核 2.66G
    2G内存

    ps:
    在Apache+PHP下,老是报错:
    [Mon Aug 18 00:43:53 2003] [notice] Parent: child process exited with status 3221225477 -- Restarting.
    [Mon Aug 18 00:43:53 2003] [notice] Apache/2.2.8 (Win32) PHP/5.2.5 configured -- resuming normal operations
    [Mon Aug 18 00:43:53 2003] [notice] Disabled use of AcceptEx() WinSock2 API
    google了不少文章,对于3221225477 这个问题都没有一个很好的解决办法,不知道其他人的解决方案如何呢?
    期待高手给予帮助,3Q
  • 2010/4/17 0:10:55   支持(9)反对(10) 回复
  • 31.keengo
  • nginx的windows版性能不佳,推荐国产的kangle web server,无论windows,还是linux性能都很不错,最关键是有个友好的管理界面。
  • 2011/7/7 20:39:48   支持(10)反对(11) 回复
  • 32.linker
  • 至强四核的,向往下来,也就六千左右,上吧!
  • 2008/4/5 22:53:37   支持(10)反对(12) 回复
  • 33.guest
  • 你们在说SCSI硬盘,为什么不说说SAS硬盘和SSD硬盘,处理能力会更加强强,
    个人觉得其他硬件也会影响性能发挥,不单单看CPU的。

    用上RAID 0阵列或者SSD硬盘,会使性能发挥得更加强
  • 2008/4/6 20:45:19   支持(8)反对(10) 回复
  • 35.王八
  • 这片文章咋这么虚..

    拿P4 2.8 跟新时代的E5110 比.真是牛b

    咋不拿E8400 pk E5110 估计E5110 单处理器要被扒皮抽筋
  • 2009/6/16 12:23:37   支持(9)反对(11) 回复
  • 36.老山羊
  • 没看懂,到底是测IIS和Apache呢?还是在测试硬件呢?
  • 2010/9/2 1:01:59   支持(10)反对(12) 回复
  • 37.青年怪客
  • 我个人感觉还是Linux服务器好些,总体上学安全性还有一些性能都还是比较好的。windows服务器也还是可以用的,只是不过,出现的问题比较多点。个人理解是这样的。
  • 2010/9/2 1:12:08   支持(14)反对(16) 回复
  • 39.ayanamist
  • 那在至强服务器上Apache的性能怎么样呢?最好奇这个
  • 2008/4/5 22:00:33   支持(14)反对(17) 回复
  • 40.Steve
  • 对于P4 2.8E和E6300,无论对于IIS和Apache,两者的点击数都基本上是250?

    E6300是雙核,P4 2.8E 只是單核,如兩者的結果一樣這代表了Win2003在多CPU多Threads的scalability有問題,但Xeon的結果又和之前的測試結果互相茅盾,所以這次的測試結果有問題。

    其實也並不要太高估Xeon這類Server CPU的能力,因為在PentiumIII或之前的x86 CPU並沒有分Desktop或Server CPU,Server也是使用P3 CPU,到了P4時代才有Xeon的出現,而Xeon也只是Desktop CPU的強化版本而已。
  • 2008/4/6 1:28:06   支持(8)反对(11) 回复
  • 41.islandfor
  • 静态,看来什么东西,传统一点保守一点至少不会吃大亏。
  • 2008/4/6 11:21:13   支持(8)反对(11) 回复
  • 42.起步者
  • 分析的有道理,学习了。先沙发一下。。
  • 2008/4/5 21:27:10   支持(14)反对(18) 回复
  • 44.教师
  • 文章写到最后严重跑题了,是不是还没测试完成呢?

    至强服务器上Apache的性能怎么样呢?我也最好奇这个
  • 2008/4/6 9:23:06   支持(10)反对(16) 回复
  • 45.williamlong
  • Windows Server 2008还没发布呢吧,不过估计2008的IIS性能应该比2003的好。
  • 2008/4/5 23:33:09   支持(13)反对(20) 回复
  • 46.测振仪
  • 好啊用上RAID 0阵列或者SSD硬盘
  • 2008/4/6 21:19:11   支持(11)反对(19) 回复
  • 47.擦最后结论基本相同用你说
  • 擦最后结论基本相同用你说
  • 2014/12/12 12:05:08   支持(0)反对(8) 回复
  • 48.没有
  • 结论建立在较小概率的事实观察基础之上,而且测试程序设计太简单,没有太大说服力。
  • 2008/4/7 17:19:38   支持(9)反对(18) 回复
  • 49.Null
  • SCSI的真正优势不是转速
    而是其读取不占CPU。。尤其是大量小文件读写的时候,能极大减轻CPU工作量
  • 2008/4/6 19:15:39   支持(7)反对(21) 回复

发表评论:

 请勿发送垃圾信息、广告、推广信息或链接,这样的信息将会被直接删除。

订阅博客

  • 订阅我的博客:订阅我的博客
  • 关注新浪微博:关注新浪微博
  • 关注腾讯微博:关注腾讯微博
  • 关注认证空间:关注QQ空间
  • 通过电子邮件订阅
  • 通过QQ邮件订阅

站内搜索

热文排行


月度排行

本站采用创作共用版权协议, 要求署名、非商业用途和相同方式共享. 转载本站内容必须也遵循“署名-非商业用途-相同方式共享”的创作共用协议.
This site is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License.