性能测试报告:ASP程序性能测试报告来源: 发布时间:星期六, 2008年12月13日 浏览:74次 评论:0
、测试目
本文第部分考察了ASP开发中些基本问题给出了些性能测试结果以帮助读者理解放入页面代码到底对性能有什么影响ADO是由Microsoft开发个通用、易用数据库接口事实证明通过ADO和数据库交互是ASP最重要应用的在第 2部分中我们就来研究这个问题 ADO所提供功能相当广泛因此准备本文最大困难在于如何界定问题范围考虑到提取大量数据可能显著地增加Web服务器负载所以我们决定这部分主要目是找出什么才是操作ADO记录集最优配置然而即使缩小了问题范围我们仍旧面临很大困难ADO可以有许多种区别思路方法来完成同个任务例如记录集不仅可以通过Record类提取而且也可以通过Connection和Command类提取;即使得到记录集对象的后还有许多可能戏剧性地影响性能操作思路方法然而和第部分样我们将尽可能地涵盖最广泛问题www. 具体地讲这部分目标是收集足够多信息回答下列问题: 是否应该通过包含引用ADOVBS.inc? 使用记录集时是否应该创建单独连接对象? 最好用哪种思路方法提取记录集? 哪种游标类型和记录锁定方式效率最高? 是否应该使用本地记录集? 设置记录集属性用哪种思路方法最好? 用哪种思路方法引用记录集字段值效率最高? 用临时串收集输出是种好思路方法吗? 2、测试环境 本测试总共用到了21个ASP文件这些文件可以从本文后面下载每个页面设置成可以运行 3种区别查询分别返回0、25、250个记录这将帮助我们隔离页面本身化、运行开销和用循环访问记录集开销 为便于测试数据库连接串和SQL命令串都在Global.asa中作为Application变量保存由于我们测试数据库是SQLServer7.0因此连接串指定OLEDB作为连接提供者测试数据来自SQLServerNorthwind数据库SQLSELECT命令从NorthWindOrders表提取7个指定字段 <SCRIPTLANGUAGE=VBScriptRUNAT=Server> SubApplication_OnStart Application(\"Conn\")=\"Provider=SQLOLEDB;\"&_ \"Server=MyServer;\"&_ \"uid=sa;\"&_ \"pwd=;\"&_ \"DATABASE=northwind\" Application(\"SQL\")=\"SELECTTOP0OrderID,\"&_ [Page] \"CustomerID,\"&_ \"EmployeeID,\"&_ \"OrderDate,\"&_ \"RequiredDate,\"&_ \"ShippedDate,\"&_ \"Freight\"&_ \"FROM[Orders]\" EndSub </SCRIPT> ’alternatesql-25records Application(\"SQL\")=\"SELECTTOP25OrderID,\"&_ \"CustomerID,\"&_ \"EmployeeID,\"&_ \"OrderDate,\"&_ \"RequiredDate,\"&_ \"ShippedDate,\"&_ \"Freight\"&_ \"FROM[Orders]\" ’alternatesql-250records Application(\"SQL\")=\"SELECTTOP250OrderID,\"&_ \"CustomerID,\"&_ \"EmployeeID,\"&_ \"OrderDate,\"&_ \"RequiredDate,\"&_ \"ShippedDate,\"&_ \"Freight\"&_ \"FROM[Orders]\" 测试服务器配置如下:450MhzPentium512MBRAMNTServer4.0SP5MDAC2.1(数据访问组件)以及5.0版本Microsoft脚本引擎SQLServer运行在另外台具有类似配置机器上和第部分样我们仍旧使用MicrosoftWebApplicationStressTool记录从第个页面请求到从服务器接收到最后个字节时间(TTLBTimeToLastByte)时间以毫秒为单位测试脚本每个页面1300次以上运行时间约20小时以下显示时间是会话平均TTLB请记住和第部分样我们只关心代码效率而不是它可伸缩性或服务器性能 同时请注意我们启用了服务器缓冲另外为了让所有文件名字长度相同有文件名字中嵌入了个或多个下划线 3、第次测试 在第次测试中我们模拟MicrosoftASPADO举例中可找到典型情形提取个记录集在这个例子(ADO__01.asp)中我们首先打开个连接然后创建记录集对象当然这里脚本按照本文第部分所整理总结编码规则作了优化 <%OptionExplicit%> <!--#Includefile=\"ADOVBS.INC\"--> <% DimobjConn 0
相关文章读者评论发表评论 |