PHP和.net测试环境大比拼

所有的测试都在同一台机器上运行(拥有4G内存和60G 7200转硬盘的Toshiba Tecra M5)。
Ubuntu 9和Windows Server 2008标准版分别安装于独立(但相同)的硬盘中。
Linux使用Apache2,Windows使用IIS 7作为各自的Web服务器。
双方的操作系统都进行了完整的patch或升级。
双方的系统和运行时都没有进行额外的性能增强。
从实验结果上看,PHP在Linux和Windows的执行性能各有千秋:
纯粹的语句执行在Windows上表现更好。
函数调用在Windows上更快。
对象的创建和访问,对于PHP 5.2来说在Linux上更快,但是对于PHP 5.3来说则是Windows更快。
类库调用在Linux上快得多(如在Ubuntu上进行加密要比Windows要快3到5倍)。
Linux与Windows平台对比
zj-weiye,杭州有线电视,螺杆泵,Sterilization Pouch,hz
在Linux上访问文件性能略高于Windows,不过Windows上文件复制的性能要比Linux慢60%,可能是ACL高级安全的缘故。
在Linux上访问MySQL要比Windows快不少,而且在Windows上运行PHP 5.3的情况则更为恶劣(不过从下面PostgreSQL的情况上来看,这应该是糟糕实现的缘故)。

PostgreSQL在两个平台上的性能非常接近(1000个操作的差距在0.06秒之内)——无论是PHP 5.3还是PHP 5.2,Windows上表现都略胜一筹。

Windows上PHP 5.2访问MS SQL Server的性能稍逊于在Linux上访问MySQL(此时还没有面向PHP 5.3的SQL Server支持)。

对于纯粹的PHP执行性能来说,Linux和Windows相差无几,这不会成为选择Linux或Windows作为部署平台的决定性因素。如果你在构建一个应用程序,那么PostgreSQL可能是更好的选择。因为它在两个平台上的表现都很优秀。

如果你的应用程序必须使用MySQL,那么选择Windows就需要早些计划扩展性问题了。

PHP的第一个版本的SQL Server驱动程序要比MySQL或PostpreSQL要慢一些,但这应该不会成为问题。第二个版本的驱动器正在开发之中,它会带来性能提升。

在Joe看来,全面来看,PHP和IIS团队在执行性能上已经做的非常成功,接下来就需要各开源程序的团队(Drupal、WordPress、Joomla等等)为各平台进行性能优化了。

不过,除了文件复制操作之外,ASP.NET在性能方面全面领先于PHP(无论部署在Linux还是Windows上面):

Linux上访问MySQL的性能稍稍优于Windows上访问SQL Server的性能(使用普通的数据类型和SELECT语句)。但是这里的差距几乎可以忽略不计。

ASP.NET(C#)操作,如对象使用,类库调用等等,其性能都远高于PHP。


使用ASP.NET只是因为喜欢Visual Studio IDE”——个人认为Visual Studio是最有生产力的开发工具。但是,PHP的有不错的选择。我使用Zend Studio,PHPEd,Komodo,Delphi for PHP,这些都很不错。

应该比较ASP的性能——旧式的ASP与目前的PHP与ASP.NET差距太大了。做这种比较,似乎是在建议使用ASP开发新项目。

32位与64位系统对比

32位与64位系统之间的比较——这些测试的目的并不是为了体现64位系统上的性能差距。

应该使用Windows上的Apache进行测试——Apache是Linux上的服务器,不过我认为如果你在Windows上不使用IIS 7则会损失太多太多东西了。

有办法在Win2K8中,在不损失安全性的前提下加快文件复制性能吗?似乎不行。这涉及到Windows服务器上的ACL系统。可能会测试通过数据流读取文件的性能,有些东西的性能可能会有所改善。不过,Web应用程序一般不会编程来复制大量文件。

PHP一直是,也永远只是一个半专业性质的环境,这种说法狗屁不通。PHP平台上有许多专业的,高质量的应用程序,也有很多非常尊敬的开发人员。是否专业是开发人员的问题,不是PHP或ASP.NET的问题。

个人认为比较没有opcode缓存的PHP很不公平,.NET是编译执行的,而PHP需要每次都解释并‘编译’页面”——我同意这个测试可能不够完整,测试PHP的方式,就和下载安装的方式一样。虚拟主机也没有安装op-code缓存。而事实上,ASP.NET自带这个特性也并不意味着测试是不公平的,这是因为PHP缺少这个特性。

说PHP不是一个‘专业的’语言很没道理,因为几乎所有最大的站点都是用PHP构建的——这种说法是没道理,不过说那些站点几乎都是用PHP构建的也是错误的。有些是,有些不是。

如果你们看到这一数据之后对ASP.NET信心倍增。如果我不认为.NET是开发Web应用程序来说是一种更好的选择——至少不属于其它平台。

但是……如果你因为这些数据而忽视PHP,也是错误且幼稚的行为。从纯技术角度来说,.NET远比PHP强大,但这并不意味着PHP不够强大。PHP的力量体现在众多的应用程序以及可用的框架。

转载于:https://www.cnblogs.com/webearly/archive/2011/04/29/2032952.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值