我们在共享域中托管一个站点,我们没有安装memcache和APC服务。另一方面,在我们的一个表中,该表数据大约是11,00,000行。我们想实现zend mysql缓存我们的系统用于缓存mysql查询结果缓存。请指导我如何为我们的案例实现zend缓存?
答案 0 :(得分:0)
如果您使用的是zend框架,那么这个例子就是使用zend框架(版本1. *)库的不同情况。您可以从Zend Framework
下载库include 'library/Zend/Cache.php';//include zend cache library
// set cache options
$frontendOptions = array(
'lifetime' => null, // cache lifetime of 2 hours
'automatic_serialization' => true
);
$backendOptions = array(
'cache_dir' => './tmp/' // Directory where to put the cache files
);
// getting a Zend_Cache_Core object
$cache = Zend_Cache::factory('Core',
'File',
$frontendOptions,
$backendOptions);
// see if a cache already exists:
if( ($result = $cache->load('myresult')) === false ) {
// cache miss; connect to the database
mysql_connect('localhost', 'user', 'password');
mysql_select_db('test');
$query = 'select * from users';
$rs = mysql_query($query);
while($row = mysql_fetch_assoc($rs))
{
$result[] = $row;
}
$cache->save($result, 'myresult');
} else {
// cache hit! shout so that we know
echo "This one is from cache!\n\n";
}
print_r($result);
您可以在http://framework.zend.com/manual/1.12/en/zend.cache.introduction.html
找到更多详细信息