缓存当前用户特定页面

时间:2009-09-11 14:44:06

标签: php caching memcached smarty

我们在LAMP网站上使用Smarty模板,但我的问题也适用于运行Memcached的网站(我们计划也将其带到网上)。我们用户生成的网站的许多页面都有不同的视图,具体取决于谁在查看它们。例如,一个注释列表,其中突出显示您自己的注释。对于此特定视图,每个登录用户都需要一个唯一的cache-id。我的问题是,在这种情况下,你甚至不会缓存这些观点?或者是创建/使用缓存(用于smarty或memcached)的开销,还是足够低,以至于您仍然可以看到缓存的一些好处?

2 个答案:

答案 0 :(得分:1)

除非个别用户一遍又一遍地请求这些页面,否则缓存此类内容毫无意义,我预计缓存的开销将远远超过性能优势,因为缓存命中率会很差。

您可能最好不要考虑不依赖于单个用户的网站缓存片段,也不要考虑大量页面展示的相同片段(例如,对于大部分页面展示的内容是相同的你的用户)。

例如 - 在此页面上,您可能希望缓存相关问题列表或标记信息,但可能没有什么意义,因为它的请求相对较少,因此可能会过于积极地缓存顶级栏的声誉信息。 / p>

答案 1 :(得分:0)

如果视图代码不太复杂,则只需缓存数据并每次生成视图。