我有兴趣使用ASP.NET Cache来减少加载时间.我该怎么做?我从哪里开始?缓存究竟是如何工作的?
随着应用程序的增长,利用缓存作为获得可伸缩性并保持一致的服务器响应时间的方法是很正常的.缓存通过将数据存储在内存中来大幅减少访问时间.首先,我将介绍ASP.NET缓存.
ASP.NET Web应用程序中有3种常规缓存技术:
页面输出缓存(页面级)
页面部分页面输出(页面的特定元素)
程序化或数据缓存
输出缓存
页面级输出缓存缓存页面的html,以便每次ASP.NET页面请求它首先检查输出缓存.您可以通过输入参数(VaryByParam)改变这些请求,因此只有ID = 1的用户才能缓存页面ID = 2 asp.net缓存足够聪明,知道它需要重新呈现页.
部分页面缓存
很多时候,在这些情况下缓存整个页面是不合理的,您可以使用部分页面缓存.这通常与用户控件一起使用,并且设置方式与页面级别相同,只是在usercontrol中添加OutputCache声明.
数据缓存
您可以存储整个应用程序中常用的对象或值.它可以很容易:
Cache["myobject"] = person;
企业级缓存
值得一提的是,有许多企业级缓存架构已经开始利用有效性缓存.Memnet for .net和Velocity(现在的App Fabric) 是一对.
一般来说
你不能真正对你应该和不应该缓存的内容进行全面陈述,因为每个应用程序都是不同的.但是,您可以进行一些能够实现大部分时间的概括.静态元素(如图像和内容)可以缓存.即使是受到重创的动态页面也值得缓存5-10秒,它将为您的Web服务器带来一个与众不同的世界.
缓存概述
您最好的选择可能是查看www.asp.net/learn/videos上的几个缓存视频,具体是:如何使用缓存?以及如何更好地利用缓存?
我总觉得它们很有帮助.