asp.net中Session缓存与Cache缓存的区别分析

时间:2021-09-10 14:24:11

其中Cookie是保存在客户端的一组数据,主要用来保存用户名等个人信息。 
Session则保存对话信息。 

Application则是保存在整个应用程序范围内的信息,相当于全局变量。 
Session用的比较多。 

Session缓存Cache缓存的区别,可以参考如下的几点: 

1、最大的区别是Cache提供缓存依赖来更新数据,而Session只能依靠定义的缓存时间来判断缓存数据是否有效。 
2、即使应用程序终止,只要Cache.Add方法中定义的缓存时间未过期,下次开启应用程序时,缓存的数据依然存在。而Session缓存只是存在于一次会话中,会话结束后,数据也就失效了。 
3、Session容易丢失,导致数据的不确定性,而Cache不会出现这种情况。 
4、由于Session是每次会话就被加载,所以不适宜存放大量信息,否则会导致服务器的性能降低。而Cache则主要用来保存大容量信息,如数据库中的多个表。 
5、VS2005的测试版提供了将缓存保存在硬盘上的参数,但正式版中取消了这个功能,估计其在以后版本中会重新实现。而Session目前只能保存在内存中,对其性能有影响。