Asp.Net2.0的新技术缓存通知
来源:互联网 发布:php yii框架教程 编辑:程序博客网 时间:2024/06/04 19:55
当同样一段数据,很多人要访问时,以前我总是不断的从数据库里面读出来到DataSet中,然后慢慢的处理,但是每一个用户的访问数据,都要进行同样的步骤,感觉机子承受不了啊……
找了几种方法,显示用Cookies技术,发现不安全啊,于是使用Session变量来盛放数据,服务器变量,安全没有话说的,接下来发现这个Session是一个用户创建单独的一个,很能消耗服务器的资源。最后想到了缓存技术,这个使用起来也简单;可以Cache.Add,也可以Cache.Insert,还可以直接Cache["key"]=value赋值;太方便了……
现在又发现了缓存Cache的不足之处了,那就是别人改了数据库里面的技术,但是你的Cache中的数据还是老数据,不同步啊……思考中……
今天看了一下缓存通知方面的技术,感觉太爽了,可以在原数据发生改变时自动通知Cache,移走Cache中的老数据,这就是SQL缓存通知技术呀!大概意思就是:当你把SQL Server中的数据取出来保存在Cache中,不用怕数据过期,只要数据库里面的数据发生变化,Cache中的数据就会移除掉……
使用这种缓存通知技术的主要步骤也简单:
1>在Web.Config配置文件中添加数据库的连接字符串:在ConnectionString这个地方添加
<add name="myconstring" connectionString="server=.;database=DB_Test;uid=sa;pwd=123456;"/>
2>接下来就是在System.Web这个地方添加:
<caching>
<sqlCacheDependency enabled="true" pollTime="600">
<databases>
<add name="mydb" connectionStringName="myconstring" /add>
</databases>
</sqlCacheDependency>
</caching>
这就是一些关于数据缓存的一些参数设置……
3>设置允许数据缓存通知,允许数据库中的表缓存通知,这里有两种方法
第一种:简单一点通过Aspnet_regsql这个命令来执行,至于具体的,网上多的是……
第二种:就是通过编程实现开发数据库,数据库中表的缓存通知
主要的方法都在SqlCacheDependencyAdmin这个类里面:
该类包含了五个重要的方法:
DisableNotifications
为特定数据库禁用 SqlCacheDependency对象更改通知
DisableTableForNotifications
为数据库中的特定表禁用SqlCacheDependency对象更改通知
EnableNotifications
为特定数据库启用SqlCacheDependency对象更改通知
EnableTableForNotifications
为数据库中的特定表启用SqlCacheDependency对象更改通知
GetTablesEnabledForNotifications
返回启用了SqlCacheDependency对象更改通知的所有表的列表
4>无论你在前面通过那种方法,只要设置好了就可以了
先建立一个缓存依赖项SqlCacheDependency dep=new SqlCacheDependency("mydb","users")
这里这个mydb就是前面在Web.config中SqlCacheDependency定义了的一个数据库字符串,users该数据库的一个表
意思就是只要这个users表发生了变化
那么通过Cache.Insert("key",ds,dep)建立的数据缓存中的ds与key这个一项对应就会删除掉,
这样就实现了缓存通知……
- Asp.Net2.0的新技术缓存通知
- ASP.NET2.0缓存
- asp.net2.0的缓存机制
- ASP.NET2.0数据缓存的使用
- 转:::asp.net2.0缓存
- ASP.NET2.0_缓存
- ASP.NET2.0_缓存
- ASP.NET2.0_缓存
- ASP.NET2.0的缓存控件和地址映射(原作)
- ASP.NET2.0的缓存控件和地址映射
- ASP.NET2.0的缓存控件和地址映射
- ASP.NET2.0的缓存控件和地址映射
- Asp.Net2.0学习笔记(四):缓存的使用
- Asp.net2.0中的缓存机制
- Asp.net2.0 页面缓存技术
- ASP.NET2.0 缓存(Cache)技术介绍
- Asp.net2.0 页面缓存技术
- ASP.NET2.0缓存(Cache)技术
- http://www.proxyie.cn/
- 源码网站大全
- IBM官方db2信息中心最新消息:不推荐使用控制中心工具和 DB2 管理服务器(DAS)
- 浪潮之巅 第十一章:幕后的英雄 风险投资 (4)
- 关于Debug和Release之本质区别的讨论
- Asp.Net2.0的新技术缓存通知
- 面试归来5--多进程通信
- org.apache.tomcat.util.http.Parameters processParameters
- 面试归来6--模板函数 函数模板 模板类 类模板 区别
- D-Bus 体系
- sql DATEPART函数使用
- 我喜欢的一篇文章——一只特立独行的猪
- C++面试题.doc
- 在windows xp本机上安装织梦CMS