私はCakePHPアプリケーションでMemcachedを使用してMySQL結果セットをキャッシュしています。私がキャッシングしている1つの結果セットは、約半分が空です。CakePHPのMemcachedで空の結果セットと未設定のキーをチェックする方法
私が抱えている問題は、結果セットが空で、Memcachedキーを設定すると、CakePHPのfindメソッドから空白の結果がセットされるということです。
次のページの読み込み時にスクリプト内のMemcachedキーをチェックすると、Memcachedキーの値を読み取るとfalseが返されるため、クエリが再度実行されます。
は、ここではCakePHPのキャッシュユーティリティを使用して、私の一般的なmemcachedのロジックです:
存在しないMemcachedのキーと偽/空が含まれているキーを区別するためにキャッシュをチェックするのがベストプラクティスは何if(!$resultsArray = Cache::read('results_array')) {
$resultsArray = $this->Model->find('all', $params);
Cache::write('results_array', $resultsArray);
}
以前の検索関数の値? (多分これはMemcachedよりもPHP /プログラミングに関するものです)。