PHP:如何进行缓存?

时间:2010-07-06 09:32:06

标签: php caching

所以我想为我正在构建的论坛做缓存,我想了解最好的方法。我一直在做一些阅读和Zend Framework处理缓存的方式(here)很好地解释了这个想法,但有一些我不确定的事情。

假设我要缓存帖子,我应该简单地将查询内容“转储”到文件中然后从中检索,或者我应该围绕数据构建布局,然后简单地返回内容文件?我如何处理用户信息,历史上标准论坛显示包括帖子旁边的用户总计后计数,这可能会经常更改(假设每页30个帖子)并且意味着我必须不断清除缓存,这看起来似乎非常多余。

我找不到任何关于我应如何处理此问题的文章,我有兴趣了解更多,有没有人有任何见解或相关文章可以提供帮助?

1 个答案:

答案 0 :(得分:3)

在点击缓存(以及因此对缓存有用的人)的频率以及要缓存的数量以及生命周期应该有多大之间总会有一个权衡。

您应该确定应用程序中的瓶颈。如果它是保持性能的查询,则通过所有方式缓存查询。如果它正在构建页面的某些部分,请将其缓存。

至于检索用户帖子,如果你希望它尽可能地生效,那么你就无法缓存它们(或者如果你这样做,你将不得不使该用户发布的所有缓存线程无效。 ..)。从数据库中检索帖子计数(如果做得好)不应该太费力。您可以缓存一个模板,其中帖子计数留空以便稍后填写,或者您可以使用Javascript做一些技巧。