ASP.NET中Application和Cache的区别分析
作者:
在asp.net中储存数据的方式有很多,包括application,session,cache, cookie, viewstate。其中application和cache的应用范围,使用方式都比较相似,这里主要对比一下这两种方式。
相同点:
1. 二者存储的变量的有效范围都是整个应用程序的生命周期。
2. 二者都可以存贮对象。
不同点:
1. application是在asp阶段使用的,后来升级到.net后,使用的是cache,但为了向前兼容,依然保留了application。
2. cache比application使用更加灵活,功能更强大。cache可以设置每一个item的优先级,当服务器内存不够时,将对cache进行压缩,将一些很长时间没使用的或者优先级低的item从cache中移去。
3.cache中可设置某个item的依赖性,依赖的对象可以是 cache中的其他item或者是某个文件。当依赖的item或者文件发生改变时,此item的内容会自动更新或者移除。
4.效率上,cache 要比application高,部分原因是因为appliction并发访问时需要调用lock和unlock,这将所有的application变量全锁定,而cache内部实现了并发访问时的互锁,每次可以只对某一个item加锁,而不是对整个cache加锁。
参考资料:http://www.eggheadcafe.com/articles/20030405.asp
您可能感兴趣的文章:
- HTML5 WebStorage(HTML5本地存储技术)
- 常见的浏览器存储方式(cookie、localStorage、sessionStorage)
- vue中使用sessionStorage记住密码功能
- 使用sessionStorage解决vuex在页面刷新后数据被清除的问题
- 使用JS获取SessionStorage的值
- 详解Vue中localstorage和sessionstorage的使用
- jQuery访问浏览器本地存储cookie、localStorage和sessionStorage的基本用法
- JS 中LocalStorage和SessionStorage的使用
- JS中LocalStorage与SessionStorage五种循序渐进的使用方法
- ASP.NET中Application、Cookie、Session、Cache和ViewState
- 异步 HttpContext.Current实现取值的方法(解决异步Application,Session,Cache...等失效的问题)
- ASP javascript Application对象的Contents和StaticObjects做Cache的一些经验
- indexedDB bootstrap angularjs之 MVC DOMO (应用示例)
- 5个HTML5的常用本地存储方式详解与介绍