我在cakephp中有一个站点,我为它配置了缓存。 在bootstrap.php中,我写了这行像cakephp网站中的指南:
Cache::config('default', array('engine' => 'File'));
Cache::config('short', array(
'engine' => 'File',
'duration' => '+1 hours',
'path' => CACHE,
'prefix' => 'cake_short_'
));
// long
Cache::config('long', array(
'engine' => 'File',
'duration' => '+1 week',
'probability' => 100,
'path' => CACHE . 'long' . DS,
));
在我的控制器中,我想缓存一些多次调用的查询:
class User extends AppModel {
public function get($alias) {
$result = Cache::read('get_users', 'longterm');
if (!$result) {
$result = $this->find('all', array('conditions' =>array( 'alias' => $alias)));
Cache::write('get_users', $result, 'longterm');
}
return $result;
}
}
我想知道使用参数(别名)缓存查询是否有效,或者更好地仅缓存没有这样的参数的查询?
$result = $this->find('all', array('order' =>'id'));
因为我的疑问是:用参数缓存查询是否有用?是一种提高网站速度的好方法吗?