0

Zend_Cacheをmemcachedの2つの異なるインスタンスで動作させようとしています。両方のインスタンスがアクティブでリッスンしています。これをテストしましたが、Zend_Cacheは、2番目のインスタンスを完全に無視して、memcachedのデフォルトポートにすべてを詰め込み続けます。これは私のブートストラップの私のコードです:

    $backend = array(
        'name' => 'Memcached',
        'servers' => array( array(
            'host' => '127.0.0.1',
            'port' => '11211'
        ) ),
        'compression' => true
    );

    $backend_system = array(
        'name' => 'Memcached',
        'servers' => array( array(
            'host' => '127.0.0.1',
            'port' => '11212'
        ) ),
        'compression' => true
    );   

    $systemCache = array(
            'frontend' => array(
                'name' => 'Core',
                'options' => array(
                    'lifetime' => 7*24*60*60,
                    'automatic_serialization' => true
                )
            ),
            'backend' => $backend_system
        );            

    $dataCache = array(
            'frontend' => array(
                'name' => 'Core',
                'options' => array(
                    'lifetime' => 1*60*60,
                    'automatic_serialization' => true
                )
            ),
            'backend' => $backend
        );

    $manager = new Zend_Cache_Manager;
    $manager->setCacheTemplate('system', $systemCache);
    $manager->setCacheTemplate('data', $dataCache);
    Zend_Registry::set( 'manager' , $manager );

ここで何が問題になっていますか?

4

1 に答える 1

1

そして答えは単純なものでした。次のように、オプションを$backend*配列の配列で囲むのを忘れました。

    $backend_system = array(
        'name' => 'Memcached',
        'options' => array(
            'servers' => array( array(
                'host' => '127.0.0.1',
                'port' => '11212'
            ) ),
            'compression' => true
        )
    );  
于 2012-12-18T13:13:58.683 に答える