与没有数据库的网站相比,数据库的存取会降低你的系统性能。但是大多数情况下,网站和数据库有密不可分的关系,正是数据库给站点提供了大容量、多样性、个性化等特色,并实现了很多特殊的功能。
1.不要忘记给数据库做索引。合理的索引能立即显著地提高数据库整个系统的性能。可以参考有关SQL性能调试书籍,学会根据所需查询方式合理制作索引和根据索引方式改进查询语句。
2.在适当的情况下,尽可能的用存储过程而不是SQL查询,因为前者已经过了预编译,运行速度更快。同时让数据库仅仅返回你所需要的那些数据,而不是返回 大量数据再让ASP程序过滤。总之要充分和有效地发挥数据库的强大功能,让它按照我们的要求反馈给我们最合适和最精练的信息。
3.在可能情况下我们应该使用SQL Server而不是Access。因为Access仅仅是基于文件的数据库,多用户性能很差。数据库连接尽量使用OLEDB和非DSN方式,因为这种连接方式有更好的并发性能。
4.避免使用DAO(Data Access Objects)和RDO(Remote Data Objects)数据源,因为他们主要应用在单用户的处理系统里,ADO(ActiveX Data Objects)才是为Web应用设计的。
5.建立记录集Rescordset的时候要清晰合理地设置数据游标(cursort)和锁定方式(locktype)。因为在不同的方式下 ASP会以不同的方式操纵数据库,其执行速度也有很大区别,尤其在大数据量的时候。如果你只想遍历数据,那么默认游标(前进、只读)会带来最好的性能。
6.当你引用ADO变量的时候,会消耗较多的CPU周期。因此,如果在一个ASP页面中多次引用数据库的字段变量,一个较好的方式是将字段值先放入本地变量,然后可以直接调用本地变量来计算和显示数据。
7.缓存ADO Connection对象也许不是一个好主意。如果一个连接(Connection)对象被存储在Application对象中而被所有ASP页面使用, 那么所有页面就会争着使用这个连接。但是如果连接对象被存储在Session对象中,就要为每个用户创建一个数据库连接,这就减小了连接池的作用,并且增 大了Web服务器和数据库服务器的压力。可以用在每个使用ADO的ASP页创建和释放ADO对象来替代缓存数据库连接。因为IIS内建了数据库连接池,所 以这种方法非常有效,缺点是每个ASP页面都需要进行一些创建和释放操作。
8.ASP最强大和主要的用途之一就是对数据库进行操作,在数据库操作中我们要注意:不要任意使用“SELECT * ......” 形式的SQL查询语句。应该尽量检索你所需要的那些字段。比如一个表中有10个字段,但是你只会用到其中的一个字段(name),就该使用“select name from mytable”,而不是用“select * from mytable”。在字段数比较少的时候,两者的区别可能并不明显,但是当一个表中拥有几十个字段的时候,数据库会多检索很多你并不需要的数据。在这种情 况下你最好不要为了节省打字时间或者害怕查找对应字段名称的麻烦,而要老老实实地使用“select id,name,age... from mytable”。
9.及时关闭打开的记录集对象以及连接(Connection)对象。记录集对象和连接对象耗费系统资源相当大,因此它们的可用数量是有限的。如果你打开 了太多的记录集对象以及连接对象而最后却没有关闭它们,可能会出现ASP程序刚开始的时候运行速度很快,而多运行几遍就越来越慢的现象,甚至导致服务器死 机。请使用如下方法进行关闭: MyRecordSet.closeSet MyRecordSet=Nothing Set MyConnection=Nothing
10.连接数据库仍然使用ODBC系统或者文件DSN来连接数据库,或者使用很快的OLEDB技术来连接。使用后者,当移动Web文件时,不再需要修改配置。
OLEDB位于应用程序与ODBC层之间。在ASP页面中,ADO就是位于OLEDB之上的程序。调用ADO时,首先发送给OLEDB,然后再发送给ODBC层。可以直接连接到OLEDB层,这么做后,将提高服务器端的性能。怎么直接连接到OLEDB呢?
如果使用SQLServer 7,使用下面的代码做为连接字符串:
strConnString = "DSN='';DRIVER={SQL SERVER};"
& _ "UID=myuid;PWD=mypwd;"
& _"DATABASE=MyDb;SERVER=MyServer;"
最重要的参数就是“DRIVER=”部分。如果你想绕过ODBC而使用OLEDB来访问SQL Server,使用下面的语法:
strConnString
="Provider=SQLOLEDB.1;Password=mypassword;" & _
"Persist Security Info=True;User ID=myuid;" & _
"Initial Catalog=mydbname;" & _
"Data Source=myserver;Connect Timeout=15"
为什么这很重要?
现在你可能奇怪为什么学习这种新的连接方法很关键?为什么不使用标准的DSN或者系统DSN方法?好,根据Wrox在他们的ADO2.0程序员参考书籍中所做的测试,如果使用OLEDB连接,要比使用DSN或者DSN-less连接,有以下的性能提高表现:
性能比较:
----------------------------------------------------------------------
SQL
OLEDB DSN
连接时间: 1882
重复1,000个记录的时间: 29005400
Access
OLEDB DSN
连接时间: 6299
重复1,000个记录的时间: 100950
----------------------------------------------------------------------
这个结论在Wrox的ADO2.0程序员参考发表。时间是以毫秒为单位,重复1,000个记录的时间是以服务器油标的方式计算的。
相关推荐
【大型网站数据库优化】在构建高访问量的网站时,数据库优化是至关重要的。面对千万人同时访问的挑战,数据库需要高效、稳定地处理大量并发请求,保证快速响应和高可用性。以下是一些关键的优化策略: 1. **程序与...
- **大型电商网站数据库优化**:针对高并发访问场景下的性能瓶颈进行了详细的分析,并提出了解决方案。 - **金融交易系统性能提升**:通过改进SQL查询、优化内存配置等方式显著提高了交易处理速度。 - **大数据分析...
网站数据库模板是构建网站不可或缺的一部分,它为存储和管理网站数据提供了一个标准的结构。一个通用的网站数据库模板能够适应多种类型的网站需求,无论是电子商务、博客、论坛还是新闻资讯类网站,都能找到适用的...
数据库优化是网站建设中至关重要的环节,它直接影响到网站的性能和用户体验。数据库优化主要包括SQL语句优化、索引管理、程序优化以及数据库架构调整等多个方面。 首先,SQL语句优化是基础。不当的SQL查询可能导致...
**在线音乐网站数据库设计** **第一章 引言** 1.1 编写目的 本文档旨在详细阐述在线音乐网站的数据库结构模型设计,为系统开发人员、测试人员、运维人员提供清晰的指导,确保数据库的高效运行和后期维护。通过这份...
对于【常规网站数据库查看器】,这通常指的是适用于常见Web应用程序的数据库管理工具。这些工具不仅能够显示数据库结构,如表、视图、存储过程和触发器,还能进行数据查询、编辑、导入导出、备份恢复等一系列操作。...
2. 网站数据库优化:网站数据库优化是网站维护的重要一环,包括对数据库的优化、数据库备份、数据库恢复等,以确保数据库的安全和稳定。 3. 网站功能开发:网站功能开发是网站维护的另一重要方面,包括对已经存在的...
### 金蝶K3数据库优化知识点详解 #### 一、理解数据库服务器CPU曲线的重要性 金蝶K3作为一款广泛应用于企业财务管理的软件,其数据库性能直接影响到系统的响应速度及稳定性。通过对数据库服务器CPU曲线的分析,...
数据库优化是IT领域中至关重要的一个环节,尤其是在大型企业或高流量网站的环境中,数据库的性能直接影响到整个系统的运行效率。"数据库优化维护计划任务"这个压缩包文件显然是为了解决这个问题而设计的,它包含了对...
而“数据库优化参考网站.rar”可能包含了一些权威的社区论坛和博客,这些地方往往能找到最新的技术资讯和解决方案。 综上所述,数据库优化是一个涉及多方面技能的综合过程,需要理论知识与实践经验相结合,通过不断...
Oracle之路与数据库优化是IT领域中的一个重要主题,尤其对于那些管理大型企业系统或者高流量网站的数据库管理员来说,这是确保系统高效运行的关键。Oracle数据库作为全球最广泛使用的商业数据库管理系统之一,其性能...
网站数据库脚本是开发者在构建Web应用程序时经常会用到的一种工具,主要用于管理、操作和维护数据库。本资源“网站数据库脚本demo”提供了一个学习sqlserver数据库管理的实例,适用于初学者和有经验的开发者进行实践...
数据库优化是IT领域中至关重要的一个环节,尤其是在大型企业或高流量网站中,数据库性能的优劣直接影响到系统的响应速度和服务质量。2012年8月5日的这个资料可能是一个关于当时数据库优化实践或者技术分享的集合,...
总的来说,“千里之行购物网站”的数据库设计是一个涉及多方面知识的综合工程,包括但不限于需求分析、数据建模、数据库优化、安全性设计以及高可用性架构。通过精心的设计和实施,我们可以构建一个高效、安全且易于...
ASP.NET数据库网站设计教程是一门深入讲解如何使用ASP.NET技术构建与数据库交互的web应用程序的课程。这门教程包括了理论知识的讲解以及实践操作的示例,旨在帮助学习者掌握构建动态、数据驱动的网站所需的技能。 ...
网站数据库的设计和实现涉及到多个关键知识点,包括但不限于数据存储、数据管理、数据查询、性能优化以及安全性等方面。 首先,我们需要理解网站是如何与数据库进行交互的。在Web开发中,通常采用客户端-服务器...
wordpress数据库优化介绍 这篇wordpress优化数据库的方法(详解版)添加了很多的说明,目的是让不清楚wordpress数据库的童鞋可以了解下理论知识。理论应用于实际么。如果只想看操作的本站总结了wordpress数据库优化的...
"电子商务网站数据库设计" 电子商务网站数据库设计是指在电子商务网站中对数据库的设计和实现,涵盖了数据库模型的设计、数据库表的设计、存储过程和触发器的设计等方面。以下是电子商务网站数据库设计的相关知识点...
在构建一个网站数据库时,我们需要考虑许多关键因素和设计原则,以确保数据的高效存储、检索和管理。根据提供的信息,这个压缩包可能包含了用于班级网络数据库的代码,涵盖了课程、系别以及它们之间关系的实现。让...