ASP.NET MVC 3:什么以及什么时候缓存以及如何决定?

时间:2011-03-31 08:09:34

标签: asp.net-mvc caching asp.net-mvc-3

我一直忽略了缓存方面的知识,虽然我过去常常使用缓存,但这并不是我熟悉的。

我找到了一篇关于what caching is and what kinds of cache there are的精彩教程(我已经知道缓存是什么),但是......

如何确定缓存的内容和时间?是否有始终缓存的内容?在什么情况下你从不使用缓存?

2 个答案:

答案 0 :(得分:4)

第一条规则是:在您需要之前不要缓存,这将是premature optimization(我找到的第一个链接,谷歌了解更多信息)

缓存的最大问题是缓存失效。当您缓存的数据正在更新时会发生什么。您需要确保您的缓存也已更新,如果没有正确完成,通常会变得一团糟。

我会:

  1. 不使用构建应用程序 缓存并确保 功能按预期工作
  2. 做一些性能测试,和 在需要时应用缓存
  3. 应用缓存后做 性能测试再次检查     您正在获得预期的速度提升

答案 1 :(得分:3)

我认为最简单的方法就是问自己一堆问题,

此结果是否会改变?

否?然后永久缓存

是的,什么时候会改变?当用户更新内容时。 是否仅影响更改值或特定用户的特定用户。这应该可以指示何时清除特定缓存。

你可以继续前进,但过了一段时间你会得到不同的个人资料 UserCache,GlobalCache只是两个例子。 这些配置文件应该能够告诉您要缓存的内容并具有一定的更新条件(何时刷新缓存)