2011-11-17 81 views
4

我在PHP中构建了一个相当庞大和复杂的CMS,并且我的计划是在其某些部分实现缓存(可以为特定页面/部分创建/禁用缓存)。经过一番研究后,我得出结论:使用URL将是查找和检索cahced文件的最佳实践。我的目的是实现一个“整页”解决方案,以避免对应该缓存的所有页面进行突然的查询缓存并缓存整个页面。由URL缓存是一种很好的做法吗?

伪代码会是这样(修改日期除外):

$filename = md5($the_full_url); 

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

else write_cached_file($filename); 

难道这种做法被认为是好的做法呢?

回答

6

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

整页缓存是最经济的,如果页面不会根据用户/用户进行更改。如果他们愿意按用户更改用户,则可以通过[url.sessionid]进行缓存,如果没有,则整个url的缓存都可以。

它的另一种替代它们likley保持不变(例如博客条目)页面的缓存部分

最后有数据缓存,你只从数据库缓存的动态数据在本地。

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

+0

当时的想法是有东西,如缓存使用“整个页面”的想法每隔X分钟的产品网页或论坛的意见,然后禁用缓存对于喜欢“用户收件箱”或“您的论坛订阅”的东西(或者使querycaching /通过url + sessid存储缓存)。 –

相关问题