标签:
1. 概述
本章内容包括:实现 页面输出缓存、数据缓存、程序缓存 以及 HTTP缓存。
2. 主要内容
2.1 页面输出缓存
缓存是开发高可用web程序的重要部分。
① 浏览器可以以预定义的时长保存一个HTTP GET请求。
[OutputCache(Duration=120, VaryByParam="Name", Location="ServerAndClient")] Public ActionResult Index() { Return View("Index",myData); }
② Donut缓存
Donut缓存是一种服务端技术,可以实现在缓存页面中保留一个动态的部分(Donut holes)。
* ASP.NET Web forms 用 substitution控件来实现Donut缓存的功能。构建在其上的ASP.NET MVC4当然也可以使用。
③ Donut hole 缓存
与Donut相反,Donut hole 缓存页面的指定区域。
* ASP.NET MVC中通过child actions来支持Donut hole。
[ChildActionOnly] [OutputCache(Duration=60)] public ActionResult ProductsChildAction() { // Fetch products from the database and // pass it to the child view via its ViewBag ViewBag.Products = Model.GetProducts(); return View(); }
*也可以把这个缓存属性应用到控件上。
④ 分布式缓存
分布式缓存是指多服务器环境中的缓存。微软提供的一个解决方案是 Windows Server AppFabric。包含AppFabric 缓存服务。
分布式缓存的同步问题以及信息安全问题也是需要考虑的。
APPFabric还有一个好处就它可以启用session来保存数据。
Windows Azure APPFabric 可以提供一个共享的缓存服务。
2.2 数据缓存
未完待续。。。
标签:
原文地址:http://www.cnblogs.com/stone_lv/p/4776338.html