[转]使用基于轮询的SQL数据缓存依赖
2007-05-25 09:35
423 查看
当使用SQLSERVER2000中的SQL数据缓存依赖功能时,不得不采用轮询的机制检测特定数据库和数据库表中的数据是否发生更改。
三个步骤:
1.需要使用aspnet_regsql命令行或者SqlCacheDepencyAdmmin类配置数据库。目的是启用数据库对SQL数据缓存依赖功能的支持。
adpnet_regsql命令行的功能是完成有关数据库连接、应用服务、SQL数据缓存以来、会话状态等方面的配置。主要用来实现两项任务:
一是启用指定数据库的SQL数据库缓存依赖功能。aspnet_regsql -S ZGQ -U sa -P sa -d pubs -ed
二是启用指定表的SQL数据缓存依赖功能。aspnet_regsql -S ZGQ -U sa -P sa -d pubs -t titles -et
这两项配置完成后在数据库中回新建一个名为“AspNet_SqlCacheTablesForChangeNotification”表。它是启用了指定数据库的数据缓存依赖后,自动创建的数据表。该表用于记录在数据库中,启用了数据缓存依赖的数据表数据被更新的概况信息。表中有三个数据列。列tableName用于存储被更新的数据表的名称,(这些表必须启用了SQL数据缓存依赖);列notifacationCreated是用于存储数据表被更新的时间;列changeid是每当所跟踪数据表的数据发生变化时,这个字段的值就加一。ASPNET将依靠changeid的数据来决定是继续使用缓存中的数据对象还是进行更新操作。另外在数据库中还增加了几个数据存储过程、角色、触发器等。这些都是SQL数据缓存依赖功能而自动生成的。
获取当前数据库中启用SQL数据缓存以来功能的数据表列表。
aspnet_regsql -s ZGQ -U sa -P sa -d pubs -lt
关闭数据库的数据缓存依赖功能
aspnet_regsql -s ZGQ -U sa -P sa -d pubs -dd
关闭数据表的数据缓存依赖功能
aspnet_regsql -s ZGQ -U sa -P sa -d pubs -t titles -dt
也可以使用SqlCacheDepencyAdmmin类配置数据库实现SQL缓存依赖功能
建议在Global.ascx文件中使用SqlCacheDepencyAdmin类实现对SQL缓存依赖功能的统一管理:
<%@ Application Language="C#" %>
<%@ Import Namespace="System.Configuration" %>
<%@ Import Namespace="System.Web.Caching" %>
<script runat="server">
void Application_Start(object sender, EventArgs e)
void Application_End(object sender, EventArgs e)
void Application_Error(object sender, EventArgs e)
void Session_Start(object sender, EventArgs e)
void Session_End(object sender, EventArgs e)
</script>
2.配置Web.config文件
三个步骤:
1.需要使用aspnet_regsql命令行或者SqlCacheDepencyAdmmin类配置数据库。目的是启用数据库对SQL数据缓存依赖功能的支持。
adpnet_regsql命令行的功能是完成有关数据库连接、应用服务、SQL数据缓存以来、会话状态等方面的配置。主要用来实现两项任务:
一是启用指定数据库的SQL数据库缓存依赖功能。aspnet_regsql -S ZGQ -U sa -P sa -d pubs -ed
二是启用指定表的SQL数据缓存依赖功能。aspnet_regsql -S ZGQ -U sa -P sa -d pubs -t titles -et
这两项配置完成后在数据库中回新建一个名为“AspNet_SqlCacheTablesForChangeNotification”表。它是启用了指定数据库的数据缓存依赖后,自动创建的数据表。该表用于记录在数据库中,启用了数据缓存依赖的数据表数据被更新的概况信息。表中有三个数据列。列tableName用于存储被更新的数据表的名称,(这些表必须启用了SQL数据缓存依赖);列notifacationCreated是用于存储数据表被更新的时间;列changeid是每当所跟踪数据表的数据发生变化时,这个字段的值就加一。ASPNET将依靠changeid的数据来决定是继续使用缓存中的数据对象还是进行更新操作。另外在数据库中还增加了几个数据存储过程、角色、触发器等。这些都是SQL数据缓存依赖功能而自动生成的。
获取当前数据库中启用SQL数据缓存以来功能的数据表列表。
aspnet_regsql -s ZGQ -U sa -P sa -d pubs -lt
关闭数据库的数据缓存依赖功能
aspnet_regsql -s ZGQ -U sa -P sa -d pubs -dd
关闭数据表的数据缓存依赖功能
aspnet_regsql -s ZGQ -U sa -P sa -d pubs -t titles -dt
也可以使用SqlCacheDepencyAdmmin类配置数据库实现SQL缓存依赖功能
建议在Global.ascx文件中使用SqlCacheDepencyAdmin类实现对SQL缓存依赖功能的统一管理:
<%@ Application Language="C#" %>
<%@ Import Namespace="System.Configuration" %>
<%@ Import Namespace="System.Web.Caching" %>
<script runat="server">
void Application_Start(object sender, EventArgs e)
void Application_End(object sender, EventArgs e)
void Application_Error(object sender, EventArgs e)
void Session_Start(object sender, EventArgs e)
void Session_End(object sender, EventArgs e)
</script>
2.配置Web.config文件
相关文章推荐
- 使用基于轮询的SQL数据缓存依赖
- 使用基于轮询的SQL数据缓存依赖
- [转]使用基于轮询的SQL数据缓存依赖
- 使用SQL数据缓存依赖功能的步骤
- SQL轮询数据依赖缓存
- 在ASP.NET 2.0中操作数据之五十九:使用SQL缓存依赖项SqlCacheDependency
- 【状态保持】Cache 基于SQL 数据库 的缓存依赖 轮询机制详解
- sqlCachedependency【数据缓存依赖】 的使用
- SQL数据缓存依赖 [SqlServer | Cache | SqlCacheDependency ] -- [转]
- SQL数据缓存依赖功能
- SQL数据缓存依赖 [SqlServer | Cache | SqlCacheDependency ] -- [转]
- SqlCacheDependency使用轮流检测技术(轮询)使缓存无效
- SQL数据缓存依赖 [SqlServer | Cache | SqlCacheDependency ]
- 我用ASP.NET缓存之SQL数据缓存依赖(SqlCacheDependency)
- SQL数据缓存依赖 [SqlServer | Cache | SqlCacheDependency ]
- 基于PetShop的数据可视化网站(二):缓存依赖
- Excel Service 使用外部数据之一——基于SQL身份验证嵌入数据连接
- 使用SqlCacheDependency依赖项让数据库变化后缓存失效
- SQL数据缓存依赖
- 高效使用使用SQL缓存依赖