Php 条令2结果缓存
我想在Zend Framework 2项目上使用条令2的结果缓存,如下所示:Php 条令2结果缓存,php,mysql,caching,doctrine-orm,zend-framework2,Php,Mysql,Caching,Doctrine Orm,Zend Framework2,我想在Zend Framework 2项目上使用条令2的结果缓存,如下所示: $query->useResultCache(true, 3600, 'test'); 但它不起作用 这是我的配置文件: <?php return array( 'doctrine' => array( 'connection' => array( 'orm_default' => array( 'drive
$query->useResultCache(true, 3600, 'test');
但它不起作用
这是我的配置文件:
<?php
return array(
'doctrine' => array(
'connection' => array(
'orm_default' => array(
'driverClass' =>'Doctrine\DBAL\Driver\PDOMySql\Driver',
'params' => array(
'host' => 'localhost',
'port' => '3306',
'user' => 'root',
'password' => '',
'dbname' => 'skeleton',
'charset' => 'utf8',
'driverOptions' => array (1002 => 'SET NAMES utf8'),
)
)
),
'configuration' => array(
'orm_default' => array(
'metadata_cache' => 'array',
'query_cache' => 'array',
'result_cache' => 'array',
'driver' => 'orm_default',
'generate_proxies' => true,
'proxy_dir' => 'data/DoctrineORMModule/Proxy',
'proxy_namespace' => 'DoctrineORMModule\Proxy',
'filters' => array()
)
),
)
);
您正在使用ArrayCache实现:
'result_cache' => 'array',
ArrayCache是一个“假”缓存,它只是将值放入一个数组中,该数组在请求结束时消失,就像PHP中的其他所有内容一样。您需要使用在请求之间保持活动状态的缓存,如APC、Memcache、XCache。我想就如何实现这一点给出一些建议,但我不熟悉Zend2,请查看文档中的内容,您可能只需要将前面提到的行更改为“apc”。您正在使用ArrayCache实现:
'result_cache' => 'array',
ArrayCache是一个“假”缓存,它只是将值放入一个数组中,该数组在请求结束时消失,就像PHP中的其他所有内容一样。您需要使用在请求之间保持活动状态的缓存,如APC、Memcache、XCache。我会给出一些关于如何做到这一点的建议,但我不熟悉Zend2,请查看文档中的内容,您可能只需要将前面提到的行更改为“apc”。定义“它不起作用”。你是如何测量的?我用缓存做了一个select查询,然后编辑条目。当我再次进行select查询时,我可以看到条目上的更改,这意味着第一次选择时结果没有保存在缓存中。我没有收到任何错误。定义“它不工作”。你是如何测量的?我用缓存做了一个select查询,然后编辑条目。当我再次进行select查询时,我可以看到条目上的更改,这意味着第一次选择时结果没有保存在缓存中。我没有发现任何错误。