通过URL缓存是一种很好的做法吗?

时间:2011-11-17 22:16:24

标签: php url caching content-management-system

我正在用PHP构建一个相当大而复杂的CMS,我的计划是在它的某些部分实现缓存(可以为特定的页面/部分打开/关闭缓存)。经过一些研究后,我得出结论,使用URL将是查找和检索cahced文件的最佳实践。我的目的是实现一个“整页”解决方案,以避免对应该缓存的所有页面进行突出的查​​询缓存并缓存整个页面。

伪代码将如下所示(日期修改后排除):

$filename = md5($the_full_url);

if (file_exists($filename)) get_cached_file($filename);

else write_cached_file($filename);

这种方法可以被视为良好做法吗?

1 个答案:

答案 0 :(得分:6)

我认为这取决于页面上是否有用户生成的内容,例如,如果我查看页面并且您查看页面,我们是否会获得不同的页面或同一页面?页面上是否有任何形式的“动态”内容。

如果页面不会在用户/用户的基础上更改,则整页缓存是最经济的。如果他们可以逐个用户更改,你可以通过[url.sessionid]缓存,如果没有,那么完整网址的缓存是好的。

另一种替代方法是缓存页面中可能保持不变的部分(例如博客条目)

最后有数据缓存,您只需在本地缓存数据库中的动态数据。

整个系统取决于您的要求。