ZF2的版本在启用memcache时有用吗?

时间:2017-07-20 10:53:59

标签: php zend-framework zend-framework2 memcached

实际上,我已经在projet zf2 2.2.0版本上启用了memcache,并尝试在版本为2.5.1的新项目zf2上执行相同的操作;我不能。

这是我尝试过的(module.config.php):

     'service_manager' => array(
        'abstract_factories' => array(
            'Zend\Cache\Service\StorageCacheAbstractServiceFactory',
            'Zend\Log\LoggerAbstractServiceFactory',
        ),
        'factories' => array(
            'doctrine.cache.mycache' => function ($sm) {
            $cache = new \Doctrine\Common\Cache\MemcacheCache();
            $memcache = new \Memcache();
            $memcache->connect('localhost', 11211);
            $cache->setMemcache($memcache);
            return $cache;
            },
        ),

    ),

    // Doctrine config
'doctrine' => array(
    'driver' => array(
        __NAMESPACE__ . '_driver' => array(
            'class' => 'Doctrine\ORM\Mapping\Driver\AnnotationDriver',
            'paths' => array(__DIR__ . '/../src/' . __NAMESPACE__ . '/Entity')
        ),
        'orm_default' => array(
            'drivers' => array(
                __NAMESPACE__ . '\Entity' => __NAMESPACE__ . '_driver'
            ),
        ),
    ),
    /***** enabling the memcache ****/
    'configuration' => array(
        'orm_default' => array(
            'metadata_cache'    => 'memcache',
            'query_cache'       => 'memcache',
            'result_cache'      => 'memcache',
        )
    ),
    /**** end ****/
    'cache' => array(
        'memcache' => array(
            'instance' => 'doctrine.cache.mycache',
        ),
    ),
),

我错过了什么?

感谢。

1 个答案:

答案 0 :(得分:0)

您是否已在网络服务器设置中激活memcache作为会话容器?

对于apache:

session.save_handler = memcached
session.save_path = "localhost:11211"

修改

您确定,您使用的是memcache而没有内存缓存 d