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'));
私の疑問は次のとおりです。パラメーターを使用してクエリをキャッシュするのに役立ちますか? サイトの速度をより効率的にする良い方法はありますか?