资源描述:
《提高db2web应用程序性能的五条规则》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、优秀的代码行行相似,糟糕的代码各个不同。规则其实并不重要,重要的是养成良好习惯。译者题记简介速度和可升级性是网络开发重要的性能要求,而且它们也不难达到。应用一些简单的规则会提高网络应用的性能。在本文中,您将了解到使用Borland®C#Builder和IBM®DB2®通用数据库(UDB)8.1开发快速Microsoft®ASP.NETWeb应用程序的5条规则。分析Web应用程序的性能需要利用一些手段來检测每个操作的性能。为此,我创建了一个TimeDiff类(见程序清单1),它可以计算数据库操作的用时。你可以利用
2、TimeDiff类的检测结果作为衡量数据库操作性能的基准,来观察哪些操作最为有效。我还创建了一个配合TimeDiff类使用的L0TS0FREC0RDS表(见程序清单2),它包含10,000条记录,你可以通过对它的操作來观察不同技术Z间的性能差异。DB2具有内部缓冲池,一旦运行一个查询,内部缓冲池启用,因此二次查询的速度较快。在检测查询速度时,请忽略缓冲池启用前的结果而釆用启用后的结果。程序清单1.TimeDiff类namespaceEffeciency{//////这个类用于吋间计算。在例子中,III我们将利用
3、它检测数据库操作的速度,III以便作性能上的比较。///publicclassTimeDiff{DateTimeStartTime;DateTimeEndTime;publicTimeDiff(){}publicvoidStart(){StartTime二DateTime.Now;publicvoidStop(){EndTime=DateTime・Now;}publicstringTimeDifferenceText{get{TimeSpanTimeDifference二EndTime-StartTime;re
4、turnTimeDifferenee.ToString();}程序清单2.LOTSOFRECORDS的表定义〃KEYCOL〃INTEGERNOTNULL,〃COL1〃CHAR(50),〃COL2〃CHAR(50),〃COL3〃CHAR(50),〃C0L4〃CHAR(50),〃C0L5〃CHAR(50),〃C0L6〃CHAR(50),〃COL7〃CHAR(50),〃COL8〃CHAR(50),〃C0L9〃CHAR(50),〃C0L10〃CHAR(50))IN"USERSPACE1";COMMENTONTABLE"
5、GLENN〃•"LOTSOFRECORDS"IS'TabledesignedtoContainLotsofRecords';--DDLStatementsforprimarykeyonTable"GLENN〃・"LOTSOFRECORDS"ALTERTABLE"GLENN〃・〃LOTSOFRECORDS〃ADDCONSTRAINT〃CC1058255334652〃PRIMARYKEYCKEYCOL");下面,我们就开始介绍这些提高DB2UDBWeb应用程序性能的规则。我会先介绍提高数据库性能的基本规则,然后列出
6、一些适合以BorlandDataProvider开发ASP.NET应用吋的性能规则。规则1:按需检索如果你只能记得住一条规则,那一定要记住这一条:按需检索。如果你是“幸存者”电视节目的忠实观众,您会记得其中的参赛者通过限额分配来保证每个人都有充足的食物。这种做法对于数据库开发同样适用。如果你的应用程序能够按需运行,那么就会合理地将数据库和网络资源留给其他应用。这听起来很简单,但我们还是来看一个例子假设有一个包含10,000行记录和10个字段的表,以及一个需要显示所有记录但只显示3个字段的Web页。很多开发者经常
7、图省事而使用〃select*〃语句选择所有的字段:这种做法应当避免,而应力求只检索需要的字段。可以在SQL语句中定义要检索的字段,例如:8、:9pt〃>
selectKEYCOL,COL1,COL2,COL7fromGLENN.LOTSOFRECORDS在本文附带的源程序中,有两个ASP.NET页面:一个是RetrievingAllFields.aspx,它执行第一个查询;另一个是RetrievingLimitedFields.aspx,它执行第二个查询,即只检索需要的字段。用TimeDiff