我想了解常規Memcache和Doctrine的MemcacheCache之間的區別。Zend Doctrine2 memcache vs PHP Memcache類
在我引導我實例Memcache的是這樣的:
$memcache = new Memcache;
$memcache->connect('localhost', 11211);
\Zend_Registry::set("pdc_memcache_core", $memcache);
我再有實例學說下面的代碼 - 這是不完整的代碼,我只是在看cachine:
$doctrineConfig = new \Doctrine\ORM\Configuration();
$memcacheCore = \Zend_Registry::get("pdc_memcache_core");
$cache = new \Doctrine\Common\Cache\MemcacheCache;
$cache->setMemcache($memcacheCore);
$cache->setNamespace("PDC_");
\Zend_Registry::set("pdc_memcache", $cache);
$doctrineConfig->setMetadataCacheImpl($cache);
$doctrineConfig->setQueryCacheImpl($cache);
我然後訪問緩存是這樣的:
if (\Zend_Registry::get("pdc_memcache")->contains($cacheKey)) {
...
}
我並不想在Memcache中存儲Doctrine實體 - 我只是存儲字符串和序列化數組。
現在......這是使用Memcache與Doctrine的正確方法嗎?我可以看到您使用setMemcache將Memcache實例分配給Doctrine的MemcacheCache ...但是我會使用MemcacheCache作爲我自己的東西嗎?還是應該直接使用Memcache實例?
真的很感謝這件事的一些想法,因爲我很困惑它應該如何連接在一起。