Chinaunix首页 | 论坛 | 博客
  • 博客访问: 92607305
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类:

2008-05-17 20:17:34

  来源:

本文中,您将到使用Borland C#Builder和IBM DB2通用数据库(UDB)8.1开发快速Microsoft® ASP.NET Web应用程序的几条实用的规则。

Web应用程序的性能需要利用一些手段来检测每个操作的性能。为此,我创建了一个TimeDiff类(见程序清单1),它可以计算数据库操作的用时。你可以利用TimeDiff类的检测结果作为衡量数据库操作性能的基准,来观察哪些操作最为有效。我还创建了一个配合TimeDiff 类使用的LOTSOFRECORDS表(见程序清单2),它包含10,000条记录,你可以通过对它的操作来观察不同技术之间的性能差异。DB2具有内部缓冲池,一旦运行一个查询,内部缓冲池启用,因此二次查询的速度较快。在检测查询速度时,请忽略缓冲池启用前的结果而采用启用后的结果。

程序清单1. TimeDiff类

using System;
  namespace Effeciency
  {
   ///
   /// 这个类用于计算。在例子中,
   /// 我们将利用它检测数据库操作的速度,
   /// 以便作性能上的比较。
   ///
  public class TimeDiff
  {
   DateTime StartTime;
   DateTime EndTime;

   public TimeDiff() {}

   public void Start()
   {
   StartTime = DateTime.Now;
   }

   public void Stop()
   {
   EndTime = DateTime.Now;
   }

   public string TimeDifferenceText
   {
   get
   {
   TimeSpan TimeDifference = EndTime - StartTime;
   return TimeDifference.ToString();
   }
   }
  }
  }

  

程序清单2. LOTSOFRECORDS的表定义

CREATE TABLE "GLENN "."LOTSOFRECORDS" (
"KEYCOL" INTEGER NOT NULL ,
"COL1" CHAR(50) ,
"COL2" CHAR(50) ,
"COL3" CHAR(50) ,
"COL4" CHAR(50) ,
"COL5" CHAR(50) ,
"COL6" CHAR(50) ,
"COL7" CHAR(50) ,
"COL8" CHAR(50) ,
"COL9" CHAR(50) ,
"COL10" CHAR(50) )
IN "USERSPACE1" ;
COMMENT ON TABLE "GLENN "."LOTSOFRECORDS" IS '
Table designed to Contain Lots of Records';

-- DDL Statements for primary key on Table "GLENN "."LOTSOFRECORDS"

ALTER TABLE "GLENN "."LOTSOFRECORDS"
ADD CONSTRAINT "CC1058255334652" PRIMARY KEY
("KEYCOL");
阅读(321) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~