我正在尝试在我的项目中采用memcached,该项目是在ZendFrame下构建的。
首先,我在库中创建一个Memcached类(它看起来有点不必要,因为它几乎只是封装了memcache提供的函数)。
然后我想知道我应该在哪里使用它?
控制器还是Mappers?
我可以看到两种方式都有它的意义,传统的做法是什么。
谢谢,伙计们。
答案 0 :(得分:1)
在bootstrap.php下,您需要使用_initCache()函数定义配置,该函数返回void。
定义frontEnd驱动程序,后端驱动程序(你将在物理上保存数据)并加载工厂!
有两种类型的缓存,服务器和压缩。
如果选择服务器,则需要定义外部扩展(memcached是扩展名)
我建议的一个片段是:
function _initCache() {
$frontendDriver = 'Core';
$frontendOptions = array(
'lifetime' => 7200, // cache lifetime of 2 hours
'automatic_serialization' => true
);
$backendDriver = extension_loaded('memcache') ? 'Memcached' : 'File';
$backendOptions = array();
// getting a Zend_Cache_Core object
$cache = Zend_Cache::factory($frontendDriver, $backendDriver, $frontendOptions, $backendOptions);
Zend_Registry::set('Zend_Cache', $cache);
}
从缓存中获取数据:
$date = $cache->load($cacheKey);
将数据保存到缓存中:
$cache->save($data, $cacheKey);
你在哪里可以使用它?
您的申请中的任何地方!
完成此good article。
有问题吗? :)