[摘要]转自: ChinaByte测试是在一个桌面系统上进行,配置为:400MHz Celeron处理器,128 MB RAM,操作系统是Windows 2000 Server (5.00.2195),Web服务器是运行ASP 3.0 (asp.dll 5.0.2180.1)的IIS 5.0.2157.1...
转自: ChinaByte
测试是在一个桌面系统上进行,配置为:400MHz Celeron处理器,128 MB RAM,操作系统是Windows 2000 Server (5.00.2195),Web服务器是运行ASP 3.0 (asp.dll 5.0.2180.1)的IIS 5.0.2157.1。脚本引擎(JScript和VBScript)的版本是5.1.0.4615。测试期间系统所运行的服务减小到最小数量,而且为尽可能地保证测试环境的稳定性,这个最小数量一直保持不变。
此外,考虑到IIS的默认脚本引擎设置可能造成测试结果的偏差,许多测试在两种可能的默认脚本引擎设置下进行。在所有测试过的方案中,该因素均不影响执行时间的先后和执行结果差异的大小。
测试工具
两个测试用的工具页面分别用VBScript(default.asp)和JScript(default-js.asp)编写。这两个页面具有同样的功能:让测试者选择一个ASP页面并指定执行该页面的次数,记录精确到千分之一秒的累计执行时间。(被执行页面由测试工具页面的Server.Execute调用)。
同样,考虑到脚本引擎的初始化操作可能影响被调用页面的执行时间,许多测试方案都分别用两个测试工具页面在不同的IIS默认脚本引擎设置下进行了测试。和前面一样,在所有测试过的方案中该因素均不影响执行时间的先后和执行结果差异的大小。(然而,对于测试记录来说,即使IIS的默认脚本引擎设置成了JScript,用VBScript写的测试工具页面还是要比用JScript写的测试工具页面稍微快一点)。
性能度量标准
本文测试的性能度量标准是执行时间。执行时间四舍五入到最接近的毫秒值。如果测试工具页面多次执行测试页面(例如1000次的Server.Execute调用),执行时间起始位置在包围测试页面调用的“For loop”循环之前,执行时间的结束位置在循环结束后。
基于VBScript的测试工具页面用Timer()函数计算执行时间,基于JScript的测试工具页面用JScript的Date对象计算执行时间。
……