shopex公司开发的secache
转:http://blog.163.com/zhaozunjie@126/blog/static/13982406120107910541971/
注: 前两天发现的东西, 不同于一般的PHP文件缓存实现手法. 写得不错.类似Memcahced, 单文件实现, 支持并发, 比传统分离小文件缓存方式性能提高一倍.
由于缓存文件只有一个,PHP最大寻址能力是2G,过大会指针溢出, 所以只能支持1G的缓存.
以下是官方网站的介绍
secache是一个PHP编写的文件型缓存解决方案
- 纯php实现, 无须任何扩展,支持php4 / 5
- 使用lru算法自动清理过期内容
- 可以安全用于多进程并发
- 最大支持1G缓存文件
- 使用hash定位,读取迅速
项目及下载地址 : http://code.google.com/p/secache/
secache使用方法
<?php
require('../secache/secache.php');
$cache = new secache;
$cache->workat('cachedata');
$key = md5('test'); //必须自己做hash,前4位是16进制0-f,最长32位。
$value = '值数据'; //必须是字符串
if($cache->fetch($key,$return)){
echo '<li>'.$key.'=>'.$return.'</li>';
require('../secache/secache.php');
$cache = new secache;
$cache->workat('cachedata');
$key = md5('test'); //必须自己做hash,前4位是16进制0-f,最长32位。
$value = '值数据'; //必须是字符串
if($cache->fetch($key,$return)){
echo '<li>'.$key.'=>'.$return.'</li>';
}else{
$cache->store($key,$value);
echo '<li>Data get failed! <b>'.$key.'</b></li>';
}
?>