繁体   English   中英

ASP.NET 缓存如何工作?

[英]How does the ASP.NET Cache work?

我有兴趣使用 ASP.NET 缓存来减少加载时间。 我该如何 go 关于这个? 我从哪说起呢? 缓存究竟是如何工作的?

随着应用程序的增长,利用缓存来获得可扩展性并保持一致的服务器响应时间是很正常的。 缓存通过将数据存储在 memory 中来实现,从而大大减少访问时间。 首先,我会查看 ASP.NET 缓存。

ASP.NET web 应用程序中有 3 种通用缓存技术:

  • 页面 Output 缓存(页面级别)
  • 页面部分页面输出(页面的特定元素)
  • 程序化或数据缓存

Output 缓存

页面级别 output 缓存缓存页面的 html 以便每次 ASP.NET 页面请求它检查 Z78E66DZ81 缓存。 您可以通过输入参数( VaryByParam )改变这些请求,因此如果请求来自 ID = 2 的请求,页面将只为 ID = 1 的用户缓存。

部分页面缓存

很多时候,在这些情况下缓存整个页面是没有意义的,您可以使用部分页面缓存。 这通常与用户控件一起使用,并且设置方式与页面级别相同,只是在用户控件中添加了 OutputCache 声明。

数据缓存

您可以存储整个应用程序中常用的对象或值。 它可以很容易:

Cache["myobject"] = person; 

企业级缓存

值得一提的是,有许多企业级缓存架构已经开始利用有效性缓存。 .net 的MemcacheVelocity(现在的 App Fabric)是一对。

一般来说

因为每个应用程序都是不同的,所以您不能真正就应该缓存什么和不应该缓存什么做出笼统的陈述。 但是,您可以做出一些适用于大多数时间的概括。 Static 元素(如图像和内容)可以缓存。 即使是被敲击的动态页面也值得缓存 5-10 秒,这将对您的 web 服务器产生重大影响。

您最好的选择可能是查看www.asp.net/learn/videos上的一些缓存视频,特别是:如何使用缓存? 以及如何更好地利用缓存?

我总是觉得他们很有帮助。

看看http://www.dnrtv.com/default.aspx?showNum=85这是一个关于如何进行缓存的非常好的视频教程

我认为 stack over flow 播客也谈到了它

在这里开始 ASP.NET 缓存是一个很好的教程ASP.NET 缓存快速入门教程 Output 缓存和片段缓存有助于理解概念。

这是来自 Microsoft 模式和实践团队的缓存应用程序块的有用库,用于在 .NET 应用程序中以编程方式缓存。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM