在CakePHP中,元素缓存没有做任何事情

时间:2010-11-07 14:17:10

标签: caching cakephp

我们的软件在cakePHP app中使用以下方法进行元素缓存:

示例代码:

<?php echo $this->element('cities-index', array('Cache' => array('time' => "12 hours")));?>

根据文档,这应该可以正常工作。

我已将此声明视为我们网页加载缓慢的主要原因(此操作每页执行费用为0.2秒),而且我发现缓存完全没有任何效果。

在core.php中启用缓存并设置为file,app / tmp文件夹具有正确的权限。我们辛苦地经历了cakePHP文档,并且很难过。

我们非常感谢您的帮助,谢谢!

3 个答案:

答案 0 :(得分:1)

小写'缓存' '+12小时'而非'12小时' 添加了一个键

$this->element('cities-index', array('cache' => array('key'=>'cities-cache','time' => '+12 hour')));

Nik首先发布了正确的答案,但是对原帖有评论。它可能没被注意到。

答案 1 :(得分:0)

我不知道你的缓存配置是什么,但对我来说,缓存元素并不意味着你缓存控制器和模型调用(我认为这是真正的瓶颈)。尝试缓存数据库调用,可能你的应用程序会变得更快。

答案 2 :(得分:0)

您的调试级别设置为什么?某些调试级别(1或2 - 我不记得了)将禁用缓存。

这在CakePHP 1.2.x和1.3.x之间也可能有所不同 - 所以知道哪个版本也会有用。