キャッシュ方法変更
07/07/07
Comment(0)
Trackback(0)
サーバーの負荷が上がってきている。
利用規制をかける前に、プログラム側のほうで緩和策を取った。
どうもキャッシュデーターの引き出し時の負荷が問題のようだ。
当サービスのキャッシュデーターは、データーベースに放り込んである。
データーベースから読み出し時に渋滞してしまうらしい。
よく考えると、データーベースでキャッシュを管理すること自体が、無理があるようだ。
データーベースは、一度に読みに行ける数に制限がある。
そこで、PEARのCache_Liteのモジュールを使ってみた(ウチのプログラムはPHPです)。Cache_Liteは、キャッシュをファイルで管理するので、渋滞は軽減されるはず。
例文はこんな感じ
$cache_period=24*3600;
require_once('Cache/Lite.php');
$cache_dir = 'cache_cat/';
$options = array('cacheDir' => $cache_dir,'caching' => true,'lifeTime' => $cache_period, );
$Cache_Lite = new Cache_Lite($options);
$cache_id.='web2-labo';
$cached_data=$Cache_Lite->get($cache_id);
if($cached_data){
echo $cached_data;
}else{
$data=○○; //データーを作成
$Cache_Lite->save($data,$cache_id);
}
実際のところ、読み込みが早くなっているようだ。体感でわかる。
こいつは使えそう!(…って、これまで何やっていたんだという感もあるけど)







