asp.net中Session缓存与Cache缓存的区别分析
更新时间:2013年02月26日 22:27:56 作者:
实现数据的缓存有很多种方法,有客户端的Cookie,有服务器端的Session和Application
其中Cookie是保存在客户端的一组数据,主要用来保存用户名等个人信息。
Session则保存对话信息。
Application则是保存在整个应用程序范围内的信息,相当于全局变量。
Session用的比较多。
Session缓存与Cache缓存的区别,可以参考如下的几点:
1、最大的区别是Cache提供缓存依赖来更新数据,而Session只能依靠定义的缓存时间来判断缓存数据是否有效。
2、即使应用程序终止,只要Cache.Add方法中定义的缓存时间未过期,下次开启应用程序时,缓存的数据依然存在。而Session缓存只是存在于一次会话中,会话结束后,数据也就失效了。
3、Session容易丢失,导致数据的不确定性,而Cache不会出现这种情况。
4、由于Session是每次会话就被加载,所以不适宜存放大量信息,否则会导致服务器的性能降低。而Cache则主要用来保存大容量信息,如数据库中的多个表。
5、VS2005的测试版提供了将缓存保存在硬盘上的参数,但正式版中取消了这个功能,估计其在以后版本中会重新实现。而Session目前只能保存在内存中,对其性能有影响。
Session则保存对话信息。
Application则是保存在整个应用程序范围内的信息,相当于全局变量。
Session用的比较多。
Session缓存与Cache缓存的区别,可以参考如下的几点:
1、最大的区别是Cache提供缓存依赖来更新数据,而Session只能依靠定义的缓存时间来判断缓存数据是否有效。
2、即使应用程序终止,只要Cache.Add方法中定义的缓存时间未过期,下次开启应用程序时,缓存的数据依然存在。而Session缓存只是存在于一次会话中,会话结束后,数据也就失效了。
3、Session容易丢失,导致数据的不确定性,而Cache不会出现这种情况。
4、由于Session是每次会话就被加载,所以不适宜存放大量信息,否则会导致服务器的性能降低。而Cache则主要用来保存大容量信息,如数据库中的多个表。
5、VS2005的测试版提供了将缓存保存在硬盘上的参数,但正式版中取消了这个功能,估计其在以后版本中会重新实现。而Session目前只能保存在内存中,对其性能有影响。
相关文章
asp.net使用for循环实现Datalist的分列显示功能
工程业绩--用for循环代替了DataList多列显示,得到2行四列的表格,需要内存表的8行数据2009-12-12
.net 程序通过 crontab 无法启动手动执行脚本启动的方法
.net 网关程序需要设置定时重启,按照日常操作先把正在运行的 PID kill 掉后,再执行启动服务。通过脚本无法启动,试着把 .net 程序写成服务后,发现是可以正常重启的,本文给大家介绍下.net 程序通过 crontab 无法启动手动执行脚本启动,感兴趣的朋友一起看看吧2021-12-12
ASP.NET MVC使用Knockout获取数组元素索引的2种方法
这篇文章介绍了ASP.NET MVC使用Knockout获取数组元素索引的2种方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2022-08-08


最新评论