我们的软件使用元素缓存在CakePHP的应用程序下面的方法:在CakePHP中,元素缓存没有做任何事情
示例代码:
<?php echo $this->element('cities-index', array('Cache' => array('time' => "12 hours")));?>
根据相关文档,这应该只是罚款。
我已经分离出这种说法是我们的网页加载的主要原因慢(这个操作成本我们0.2秒每页执行),我已经得出这样的缓存是做绝对没有发现。
缓存在core.php中启用并设置为文件和应用程序的/ tmp文件夹有正确的权限。我们已经苦心经历了CakePHP文档并且被难住了。
我们将不胜感激任何帮助,谢谢!
我们启用上的控制器级缓存中,通过引用缓存助手,以及$所有密集型数据库调用cacheActions。请原谅我,如果我错了,但不是元素缓存等同于“片段缓存”的意思,它应该绕过任何和所有的计算,并简单地呈现缓存的HTML输出? – Mark 2010-11-08 06:12:01
不是,因为控制器代码已经在视图代码之前执行过,所以它已经被执行以及DB调用。只要确保你缓存结果。 – 2010-11-08 07:38:24
有趣,感谢您的解释。不幸的是,我们已经在控制器中进行缓存,但我会研究该部分是否正常工作。谢谢您的帮助。 – Mark 2010-11-08 07:53:01