您的位置:首页 > 编程语言 > ASP

ASP.NET2.0 缓存技术详解(原创)

2008-12-11 21:50 459 查看
记得一位很好的朋友-东哥说过在大学毕业之前一定要做的几件事情:1、看懂petshop的架构;2、熟练运用缓存技术;3、petshop的翻新。这几天来闲下来了认真的研究了一下缓存技术(Cache技术)。在这里和大家分享一下,希望对各位初学者有点用处。

ASP.NET2.0的数据库缓存依赖保证在表的内容发生改变后才使得缓存失效,能够保证缓存数据的及时刷新。根据我的实验,只要客户的重新编译,或者数据库表发生改变,都导致缓存失效。下面是具体的步骤。

1、启用表的缓存依赖,以Pubs数据库的Authors表为例:

可以使用“Visual Studio 2005 命令提示”:如果不明白参数配置可以使用apsnet_regsql.exe -? 命令查看帮助文档

//启用数据库依赖功能

aspnet_regsql.exe -S localhost -U sa -P sa -d 数据库名称 -ed

//启用数据库表的依赖功能

aspnet_regsql.exe -S localhost -U sa -P sa -d 数据库名称 -t 表的名称 -et

//关闭数据库的数据缓存依赖功能

aspnet_regsql.exe -S localhost -U sa -P sa -d 数据库名称 -dd

//关闭数据表的数据缓存依赖功能

aspnet_regsql.exe -S localhost -U sa -P sa -d 数据库名称 -t 表的名称 -dt

或者 用windows身份验证登陆(如下)

//aspnet_regsql -S ."sqlexpress -E -d pubs -ed

//aspnet_regsql -S ."sqlexpress -E -d pubs -t authors -et

要想查看数据库现存的缓存依赖表,用下面的指令:

aspnet_regsql -S ."sqlexpress -E -d pubs -lt

2、在web.config文件里面做缓存以来配置,如下

<connectionStrings>

<add name="Pubs" connectionString="server=."sqlexpress; database = pubs; integrated security=true;"

providerName="System.Data.SqlClient" />

</connectionStrings>

<system.web>

<!--配置缓冲的连接池-->

<caching>

<sqlCacheDependency enabled="true" pollTime="1000">

<databases>

<add name="Pubs" connectionStringName="Pubs" pollTime="1000"/>

</databases>

</sqlCacheDependency>

</caching>

</system.web>

3、编码实现缓存依赖的测试,如下:

using System;

using System.Data;

using System.Configuration;

using System.Web;

using System.Web.Security;

using System.Web.UI;

using System.Web.UI.WebControls;

using System.Web.UI.WebControls.WebParts;

using System.Web.UI.HtmlControls;

using System.Web.Caching;

using System.Data.SqlClient;

public partial class _Default : System.Web.UI.Page

4、续(未完)....
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: