【问题标题】:How i can improve ASP.NET MVC 3 website performance by using Cache?如何通过使用缓存来提高 ASP.NET MVC 3 网站性能?
【发布时间】:2011-07-28 12:25:12
【问题描述】:

我有一个类似 twitter 的网站,每 30 秒或更短的时间更新一次。网站首页分为三个部分:-

左侧面板或右侧部分很少更新,但右侧部分有随机更改,因此我不需要缓存它们,但左侧或右侧的所有内容都需要缓存以提高性能。

当一些新的东西出现时,中间栏每隔几秒就会发生变化。所以我认为如果我缓存它们,那么用户永远不会得到更新

当数据库发生更改时,我如何使用缓存并删除所有缓存。在 ASP.NET MVC 中实现这一点的任何技巧

我对做一件常见事情的整个问题:-

如果我使用缓存,那么用户永远不会在网站更新后立即获得更新,所以每当数据库中发生新事情时我需要销毁缓存。那么我如何在 asp.net mvc 中做到这一点

【问题讨论】:

    标签: c# asp.net-mvc caching asp.net-mvc-3 request


    【解决方案1】:

    您需要使用OutputCacheAttribute 或类似名称。这个动作过滤器“代表一个属性,用于标记一个动作方法,其输出将被缓存。”当一个动作更新数据库时,结果视图应该被缓存,因为它覆盖了之前缓存的数据。

    【讨论】:

      【解决方案2】:

      您正在寻找的是 SqlCacheDependency。见here

      【讨论】:

        【解决方案3】:

        您应该能够使用部分视图并标记要缓存的...搜索谷歌缓存部分视图...

        您可以查看缓存依赖项以刷新缓存...或者您可以让您的缓存在给定的时间段内过期,它最终会赶上实时数据...

        在不完全理解问题的情况下很难选择最佳解决方案,但这应该为您指明正确的方向......

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2018-09-04
          • 1970-01-01
          • 2012-03-13
          • 2011-08-17
          • 2011-03-17
          • 2012-11-30
          • 1970-01-01
          相关资源
          最近更新 更多