当前位置: 代码迷 >> ASP.NET >> 缓存与定时更新解决方案
  详细解决方案

缓存与定时更新解决方案

热度:4712   发布时间:2013-02-26 00:00:00.0
缓存与定时更新
页面输出缓存3600秒      

protected   void   Application_Start(Object   sender,   EventArgs   e)
{
      //定时更新开始(自动更新数据库)
      //时间间隔为3600秒      

        假设更新数据库需要花费5分钟,那么页面缓存就错过了更新时机。该如何解决  
}

------解决方案--------------------------------------------------------
up
------解决方案--------------------------------------------------------
缓存当然在依赖条件一旦不满足之后立刻过期。Duration仅是其中最简单的一种依赖项。msdn、网上的资料足够了,你可以稍微深入一点去看。
------解决方案--------------------------------------------------------
已经说过了,缓存应该是在控件所依赖的那个数据库记录被更新,或者访问用户改变,或者控件内部请求数据等任意一个条件改变时立刻刷新。你可以将3600改为36000或者更高,然后专心设置缓存过期的控制。

为什么纠缠于多长时间定时更新一次这么简单的措施呢?!
------解决方案--------------------------------------------------------
不知道你为何总是把Duration与“避免错过更新时机”纠缠在一起给自己设置困难。这两个根本事就是两个不同的缓存依赖项,不要纠缠在一起说。
------解决方案--------------------------------------------------------
写个过期的条件不就可以了
  相关解决方案