比较:PHP和ASP.NET代码哪个运行速度更快?

来源:IT专家网  作者:佚名
摘要:Joe在博客中称,一般来说,作性能测试的目的是要尝试证明一方比令一方要快。我受雇于微软,同时编写PHP和ASP.NET代码。我在.NET出现之前就在使用PHP,两个东西我都很喜欢。…

内容提示:Joe在博客中称,一般来说,作性能测试的目的是要尝试证明一方比令一方要快。我受雇于微软,同时编写PHP和ASP.NET代码。我在.NET出现之前就在使用PHP,两个东西我都很喜欢。

刚刚在9月编程语言排行榜上取得历史性突破的PHP在Web开发领域最到的对手可能就是基于微软.NET技术的ASP.NET。近日,微软的Joe Stagner在博客上发表了一系列文章比较了PHP和ASP.NET性能方面的文章,引起了来自双方程序员的大量回应。Joe表示,他会将这样的测试持续下去,并寻求更为合适的方式,以获得对实际项目来说尽可能有参考价值的结论。

Joe在博客中称,一般来说,作性能测试的目的是要尝试证明一方比令一方要快。我受雇于微软,同时编写PHP和ASP.NET代码。我在.NET出现之前就在使用PHP,两个东西我都很喜欢。

所以,我很难说出哪个更好。当我说PHP好话时,我的微软同事们会写信来批评我,而当我发表倾向于ASP.NET的言论时,我的PHP朋友们会说我是微软的托。

我进行这个测试是因为每个人都对PHP的性能有自己的看法(Windows vs. Linux & 5.2 vs. 5.3),却没人能给出明确的数据。

ASP.NET比拼PHP的测试环境如下:

*所有的测试都在同一台机器上运行(拥有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平台对比

在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可能是更好的选择。因为它在两个平台上的表现都很优秀。

【相关文章】好搜一下
用光影提升色彩设计效果的5个方法

用光影提升色彩设计效果的5个方法

如果要让我们的网页设计更加自然、有动感且真实直观,正确理解光影效果非常重要。以下…