我正在尝试在 ZendFrame 下构建的项目中采用 memcached。
首先,我在库中创建了一个 Memcached 类(这似乎有点不必要,因为它几乎只是封装了 memcache 提供的功能)
然后我想知道我应该在哪里使用它?
控制器还是映射器?
我可以看到两种方式都有其意义,这样做的传统方式是什么。
多谢你们。
我正在尝试在 ZendFrame 下构建的项目中采用 memcached。
首先,我在库中创建了一个 Memcached 类(这似乎有点不必要,因为它几乎只是封装了 memcache 提供的功能)
然后我想知道我应该在哪里使用它?
控制器还是映射器?
我可以看到两种方式都有其意义,这样做的传统方式是什么。
多谢你们。
在 bootstrap.php 下,您需要使用返回 void 的 _initCache() 函数定义配置。
定义前端驱动程序、后端驱动程序(您将在其中物理保存数据)并加载工厂!
有两种类型的缓存,服务器和压缩。
如果选择服务器,则需要定义外部扩展(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);
你可以在哪里使用它?
在您的应用程序中的任何地方!
浏览这篇好文章。
任何问题?:)