0

这是情况。

  1. 我们的网站有大约 50,000 个“详细信息”页面,每个页面都由来自我们数据库和 API 的大量数据组成。目前这些是动态的,但数据只需要每天更改,如果那样的话。我们启用了输出缓存以加快速度。

  2. 我们每天多次直接从 Git 部署到 Appharbor。如果我错了,请纠正我,但我认为每次这样做都会丢失缓存。所以输出缓存并没有做它应该做的一切。除此之外,我宁愿内容从一开始就被缓存,而不是当第一个用户点击每个页面时。

现在,如果不是因为持续部署问题,我建议在编译期间生成静态 html 文件以获得最佳性能。但我觉得每天多次重复这个过程并不是正确的解决方案。

我们应该看什么缓存策略?

附带问题:如果我们确实生成了 50k 静态 html 文件,你会以某种方式将它们作为文件夹结构排列在磁盘上,还是将它们存储在数据库中,或者存储在内存中,还是什么?

4

1 回答 1

0

你为什么不使用 App Fabric Cache ?(我不知道它是否可以通过应用程序港口获得)

http://www.hanselman.com/blog/InstallingConfiguringAndUsingWindowsServerAppFabricAndTheVelocityMemoryCacheIn10Minutes.aspx

或者,也许您应该考虑实现自己的 OutputCache Provider 并将结果保存在您的 ravendb 或文件系统中:

http://msdn.microsoft.com/en-us/magazine/gg650661.aspx

这样,您可以确保在重新启动应用程序时不会清除缓存。

编辑:应用程序结构不可用,但您可以将 memcache 与此提供程序一起使用:https ://github.com/enyim/memcached-providers

于 2013-02-14T13:46:51.947 回答