码迷,mamicode.com
首页 > 其他好文 > 详细

第五章 设计程序架构 之 设计缓存策略

时间:2015-09-01 18:23:20      阅读:148      评论:0      收藏:0      [点我收藏+]

标签:

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

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!