使用ZF2的Doctrine Production Cache

时间:2015-01-05 15:24:24

标签: doctrine-orm zend-framework2 memcached

我目前正在准备一些软件投入生产,我想检查我的设置是否会进行优化,但是当我运行以下命令时,我会收到以下信息:

php index.php orm:ensure-production-settings
Metadata Cache uses a non-persistent cache driver, Doctrine\Common\Cache\ArrayCache.

我也用-vvv尝试了上面的命令但是输出是相同的

我开始检查我的代码,但我无法找到使用任何ArrayCache的位置。

这是我的current configuration

我知道它正在工作,因为我可以检查Memcached系统中的密钥,我也可以看到性能提升。基于我在网上找到的文档,我只能找到Doctrine建议在哪里使用APC进行生产缓存。

我目前正在使用最新的ZF2 2.3.3和最新的Doctrine 2运行PHP 5.6.4。这会使APC无法使用。

我很好奇是否有遗漏或可以这样做的事情,当我运行orm:ensure-production-settings命令时,它向我保证Doctrine Cache适合投入生产?

也许Doctrine只喜欢APC以获得最佳缓存......

1 个答案:

答案 0 :(得分:1)

检查您的模块订单。

来自module.config.php的配置会被我的DoctrineModule覆盖。

检查你的application.config.php,它的顺序如下:

return [
'modules' => [
    'DoctrineModule',
    'DoctrineORMModule',

    //YOUR_MODULES_HERE! -> after DoctrineModule
]
];