【问题标题】:ASP.NET MVC 3: what and when to cache and how to decide?ASP.NET MVC 3:缓存什么、何时缓存以及如何决定?
【发布时间】:2011-03-31 08:09:34
【问题描述】:
【问题讨论】:
标签:
asp.net-mvc
caching
asp.net-mvc-3
【解决方案1】:
第一条规则是:在需要之前不要缓存,那就是 premature optimization(我找到的第一个链接,谷歌了解更多信息)
缓存最大的问题是缓存失效。当您缓存的数据正在更新时会发生什么。您需要确保您的缓存也已更新,如果没有正确完成,通常会变得一团糟。
我愿意:
- 在没有的情况下构建应用程序
缓存并确保
功能按预期工作
- 做一些性能测试,然后
在需要时应用缓存
- 应用缓存后执行
再次进行性能测试以检查
您正在获得预期的速度提升
【解决方案2】:
我认为最简单的方法是问自己一堆问题,
这个结果会改变吗?
否?然后永久缓存
是的,什么时候会改变?当 用户 更新某些内容时。
它会仅影响更改值的特定用户还是所有用户。这应该会告诉您何时清除特定缓存。
您可以继续,但一段时间后您将获得不同的个人资料
UserCache、GlobalCache 只是 2 个例子。
这些配置文件应该能够告诉您要缓存的内容并具有一定的更新条件(何时刷新缓存)