连接缓冲池提高数据库性能

发表于:2007-06-30来源:作者:点击数: 标签:
如果你的ASP应用程序与数据库交互的话(我想肯定得访问数据库的,要不然用ASP干嘛?),使用连接缓冲池将大大提高数据库的 性能 . 建立一个到数据的连接所花费的时间和系统资源并非微不足道的. 当每个需要建立数据库连接实例的页面被访问到时,一个新的连接对象将被
如果你的ASP应用程序与数据库交互的话(我想肯定得访问数据库的,要不然用ASP干嘛?),使用连接缓冲池将大大提高数据库的性能. 建立一个到数据的连接所花费的时间和系统资源并非微不足道的. 当每个需要建立数据库连接实例的页面被访问到时,一个新的连接对象将被创建,并在该页面执行完后销毁,如果有许多人同时访问你的站点的话,访问者们将发现系统性能变得很低.

连接缓冲池维持着连接实例,以便用户可以随时使用数据库连接. 比如说,你有一个ASP页面创建了一个到SQL数据库的连接,从数据库中取出某些数据,并将其显示在Web页面上. 如果没有开启连接缓冲池,ASP将这么运作:

创建一个数据库连接
向数据库提交查询请求
获取数据
显示数据
销毁连接

用户对该页面的每次点击,服务器都将执行这些操作. 然而,当启用连接缓冲池时,相关的步骤如下:

查看缓冲池中是否有未被使用的连接
如果有,就使用该连接,如果没有,则建立一个新连接
向数据库提交查询请求
获取数据
显示数据
将连接归还缓冲池

当页面需要建立数据库连接时,重复使用连接能节省大量的系统资源.

现在我们来看看如何让ASP应用程序使用连接缓冲池. 首先,你得在注册表中的ASP注册项里打开连接缓冲池,然后将SQL Server设置成使用TCP/IP Sockets.

要在注册表中启用连接缓冲池,你得运行REGEDIT,找到这个注册表项:

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\W3SVC\ASP\Paramet
ers
(如果没有这个键,就自己建一个)

找到StartConnectionPool键,把键值从0改为1. 如此这般改动了以后,ADO和ASP将会启用连接缓冲池.

最后一步是将SQL Server设为采用TCP/IP Sockets. 启动SQL Server管理器,将缺省的网络设置一项设为TCP/IP Sockets.(注意: 连接缓冲池对于以Aclearcase/" target="_blank" >ccess为后台数据库的ASP应用无效.)


原文转自:http://www.ltesting.net