全能空间中asp.net/php/asp那种性能更好测试分析

作者:袖梨 2022-06-25

下面是本人今天的测试记录。

      测试设备及环境
      测试设备:自用笔记本
      测试系统:Windows Server 2003企业版
      运行环境:IIS6.0
      测试方法
      分别用asp.net、php和asp执行一千万次for循环,获得执行时间。如下为测试代码:
      asp.net
   
 代码如下 复制代码
     System.DateTime startTime = System.DateTime.Now;
        for (long i = 1; i < 10000000; i++)
        {
        }
        System.DateTime endTime = System.DateTime.Now;
        System.TimeSpan ts = endTime - startTime;
        Response.Write("页面执行时间:" + ts.Milliseconds.ToString("0.000") + " 毫秒");
      php
       
 代码如下 复制代码
        $start_time=microtime(true);
        for($i=0; $i<10000000; $i++)
        {
        }
        $end_time=microtime(true);
        print "页面执行时间: ".round(($end_time-$start_time)*1000,1)." 毫秒";
        ?>
     
asp
       
 代码如下 复制代码
<%
        dim i
        dim startime
        startime=timer()
        for i = 1 to 10000000
        next
        dim endtime
        endtime=timer()
        response.Write "页面执行时间:" & FormatNumber((endtime-startime)*1000,3) & "毫秒"
        %>
     
执行结果
      为了得到更合理的数据,采用各执行5次(第一次执行除外),然后取平均值。如下为测试结果:
语言 执行时间 平均时间
asp.net 31ms 15ms 31ms 15ms 15ms 21ms
php 1470ms 1473ms 1476ms 1467ms 1490ms 1475ms
asp 812ms 828ms 812ms 812ms 828ms 818ms
      从以上测试结果看出,asp.net的执行时间比php快了70倍,比asp快了39倍。这个测试结果是我一直没有想到的。
      系统资源消耗情况
      下面是执行各程序时的系统资源消耗情况,主要是看cpu和内存瞬间值。
      asp.net
      asp.net执行程序时cpu峰值升到10%,使用内存显示是1.01GB(注意,测试时笔记本并没有关闭其他所有运行着的程序,所以这个内存并不是此程序执行单独消耗的数值)。
      php
      php执行程序时cpu峰值升到75%,使用内存显示是1.03GB。
      asp
      asp执行程序时cpu峰值升到58%,使用内存显示是1.06GB。
      总结:在系统资源消耗方面,asp.net的优势再次凸显出来了,它对cpu的消耗比php和asp少很多,php对cpu的消耗比asp多一点,但差别不大;而对内存的消耗,三者差别并不大。

相关文章

精彩推荐