ZendFrame で構築されたプロジェクトに memcached を採用しようとしています。
まず、ライブラリに Memcached クラスを作成します (memcache が提供する機能をほとんどカプセル化するだけなので、少し不必要に思えます)。
それでは、どこで使用すればよいのでしょうか。
コントローラーかマッパーか?
どちらの方法にも意味があることがわかります。これを行うための従来の方法は何ですか。
みんなありがとう。
ZendFrame で構築されたプロジェクトに memcached を採用しようとしています。
まず、ライブラリに Memcached クラスを作成します (memcache が提供する機能をほとんどカプセル化するだけなので、少し不必要に思えます)。
それでは、どこで使用すればよいのでしょうか。
コントローラーかマッパーか?
どちらの方法にも意味があることがわかります。これを行うための従来の方法は何ですか。
みんなありがとう。
bootstrap.phpの下で、voidを返す_initCache()関数を使用して構成を定義する必要があります。
フロントエンドドライバー、バックエンドドライバー(uが物理的にデータを保存する場所)を定義し、ファクトリをロードします!
キャッシュには、サーバーと圧縮の2種類があります。
サーバーを選択する場合は、外部拡張機能を定義する必要があります(memcachedは拡張機能です)
私がお勧めするスニペットは次のとおりです。
function _initCache() {
$frontendDriver = 'Core';
$frontendOptions = array(
'lifetime' => 7200, // cache lifetime of 2 hours
'automatic_serialization' => true
);
$backendDriver = extension_loaded('memcache') ? 'Memcached' : 'File';
$backendOptions = array();
// getting a Zend_Cache_Core object
$cache = Zend_Cache::factory($frontendDriver, $backendDriver, $frontendOptions, $backendOptions);
Zend_Registry::set('Zend_Cache', $cache);
}
キャッシュからのデータの取得:
$date = $cache->load($cacheKey);
データをキャッシュに保存する:
$cache->save($data, $cacheKey);
どこで使えますか?
アプリケーションのどこにでも!
この良い記事を読んでください。
質問は?:)