0

ZendFrame で構築されたプロジェクトに memcached を採用しようとしています。

まず、ライブラリに Memcached クラスを作成します (memcache が提供する機能をほとんどカプセル化するだけなので、少し不必要に思えます)。

それでは、どこで使用すればよいのでしょうか。

コントローラーかマッパーか?

どちらの方法にも意味があることがわかります。これを行うための従来の方法は何ですか。

みんなありがとう。

4

1 に答える 1

1

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);

どこで使えますか?

アプリケーションのどこにでも!

この良い記事を読んでください

質問は?:)

于 2012-08-17T05:45:26.707 に答える