asp.net mvc中“几乎静态”页面的输出缓存

时间:2009-09-30 07:46:29

标签: asp.net-mvc caching

大多数网络应用程序都有“几乎静态”的页面,因为它们很少改变它们的内容,但是当它发生变化时,应立即在页面上看到它。

因此,如果您有一些允许永久缓存在PageShow方法上的OutputCache属性,则应通过调用PageUpdate方法立即使缓存失效。

有时页面的数据几乎相同,但只是一小部分(如用户名)。 在这里,我可以渲染整个页面调用不同的渲染部分,或者只是将缓存部分移动到控制器外部,以减少数据库中用于获取数据的最昂贵的调用(即:在服务存储库层上缓存)。

是否有一种模式可以在asp.net mvc上有效地进行这两种缓存?

1 个答案:

答案 0 :(得分:2)

您建议的是常见情况 - 尤其是用户名。

这被称为donut caching,是一个非常敏感的功能。

以下是关于同一主题的有用的StackOverflow question ..这会让您反对blog post(可能是关于ASP.NET MVC的关于此主题的最有用的链接)。


快速google search为此提供了许多有用的页面。

HTH!