三种缓存方式的详解
来源:互联网 发布:unity3d特效教程 编辑:程序博客网 时间:2024/05/16 19:14
1.文件缓存
一般情况下我们都将数据先缓存在文件当中,当需要的时候直接从文件中读取。则可以减少数据库查询的压力。
class File{
private$_dir;
constEXT = '.txt';
publicfunction __construct(){
$dir= str_replace('\\', '/', dirname(__FILE__));
$this->_dir= $dir.'/files/';
}
/**
* $value==null时删除缓存
*
*/
publicfunction cacheData($key,$value='',$cacheTime=0){
$filename= $this->_dir.$key.self::EXT;
//echo$filename;exit;
$dir= dirname($filename);
if(is_null($value)){//删除缓存
return unlink($filename);
}
if($value!= ''){//添加缓存
if(!is_dir($dir)){
mkdir($dir,0777);
}
if(file_put_contents($filename,json_encode($value),FILE_APPEND ) !== false){
echo 'succeed';
}
}else{
//查询缓存
if(!is_file($filename)){
return false;
}else{
return json_decode(file_get_contents($filename),true);
}
}
}
}
//测试案例
$file = new File();
$result = array(
'code'=> '555',
'message'=> 'message'
);
if($res =$file->cacheData('first',null)){
print_r($res);exit;
echo 'succeed';
}else{
echo 'fail';
}
redis的安装和使用
1.安装redis
Yum -y install redis
2. 安装php-redis扩展
yum install php-redis
3. 启动redis,并设定开机自动启动
service redis start
chkconfig redis on
4.开启终端
Redis-cli
<?php
$redis= new Redis();
$redis->connect('127.0.0.1',6379);
$redis->set('leyan',123);
echo $redis->get('leyan');
$redis->setex('leyan',12,'haha');//设置12秒内的存储
- 三种缓存方式的详解
- 设置缓存失效的三种方式
- 缓存失效的三种方式
- 设置缓存失效的三种方式
- 缓存失效的三种方式
- ThreadPoolExecutor三种缓存方式
- 浏览器三种刷新方式所采取的缓存机制
- 浏览器三种刷新方式对浏览器缓存的影响
- 浏览器三种刷新方式所采取的缓存机制
- 测试要知道的HTTP三种缓存方式
- mysql备份的三种方式详解
- mysql备份的三种方式详解
- mysql备份的三种方式详解
- mysql备份的三种方式详解
- mysql备份的三种方式详解
- C++的三种继承方式详解
- mysql备份的三种方式详解
- 加载类的三种方式详解
- 2016"百度之星" - 初赛(Astar Round2B)
- Android Studio多渠道快速打包
- Java环境搭建
- Matlab:一个简单例子了解ndgrid函数
- spring(1)Spring之旅
- 三种缓存方式的详解
- Java基础-transient关键字
- 密码判断6-12位字母数字混合
- 为什么需要https
- 笔记5 定义函数
- Go语言学习笔记一、基础知识
- springMVC (十) RequestMappingHandlerMapping
- registrator支持的环境变量
- 20160527 数据分析与SAS9 对考生成绩进行频率分析