php+redis缓存类详解大数据
2023-06-13 09:20:25 时间
$this- lifetime = $lifetime;
$this- data=$redis- hMGet($this- cacheid, array(content,creattime));
//print_r($this- redis);
//print_r($this- data);
if (!$data[content]) return false; if (time() - $data[creattime] $this- lifetime) return false; return true; /** * 写入缓存 * $mode == 0 , 以浏览器缓存的方式取得页面内容 public function write($mode=0,$content=) { switch ($mode) { case 0: $content = ob_get_contents(); break; default: break; ob_end_flush(); try { $this- redis- hMset($this- cacheid, array(content= $content,creattime= time())); $this- redis- expireAt($this- cacheid, time() + $this- lifetime); catch (Exception $e) { $this- error(写入缓存失败!); /** * 加载缓存 * exit() 载入缓存后终止原页面程序的执行,缓存无效则运行原页面程序生成缓存 * ob_start() 开启浏览器缓存用于在页面结尾处取得页面内容 public function load() { if ($this- isvalid()) { echo $this- data[content]; exit(); else { ob_start(); /** * 清除缓存 public function clean() { try { $this- redis- hDel($this- cacheid, array(content,creattime)); catch (Exception $e) { $this- error(清除缓存失败!); /** * 取得缓存文件路径 private function getcacheid() { return $this- dir.md5($this- geturl()).$this- /** * 取得当前页面完整url private function geturl() { $url = ; if (isset($_SERVER[REQUEST_URI])) { $url = $_SERVER[REQUEST_URI]; else { $url = $_SERVER[Php_SELF]; $url .= empty($_SERVER[QUERY_STRING])?:?.$_SERVER[QUERY_STRING]; return $url; /** * 输出错误信息 private function error($str) { echo div .$str. /div
// $cache = new redisCache(10); //设置缓存生存期 // if ($_GET[clearCache]) $cache- clean(); // else $cache- load(); //装载缓存,缓存有效则不执行以下页面代码 // //页面代码开始 // //页面代码结束 // $cache- write(); //首次运行或缓存过期,生成缓存
if (!$data[content]) return false; if (time() - $data[creattime] $this- lifetime) return false; return true; /** * 写入缓存 * $mode == 0 , 以浏览器缓存的方式取得页面内容 public function write($mode=0,$content=) { switch ($mode) { case 0: $content = ob_get_contents(); break; default: break; ob_end_flush(); try { $this- redis- hMset($this- cacheid, array(content= $content,creattime= time())); $this- redis- expireAt($this- cacheid, time() + $this- lifetime); catch (Exception $e) { $this- error(写入缓存失败!); /** * 加载缓存 * exit() 载入缓存后终止原页面程序的执行,缓存无效则运行原页面程序生成缓存 * ob_start() 开启浏览器缓存用于在页面结尾处取得页面内容 public function load() { if ($this- isvalid()) { echo $this- data[content]; exit(); else { ob_start(); /** * 清除缓存 public function clean() { try { $this- redis- hDel($this- cacheid, array(content,creattime)); catch (Exception $e) { $this- error(清除缓存失败!); /** * 取得缓存文件路径 private function getcacheid() { return $this- dir.md5($this- geturl()).$this- /** * 取得当前页面完整url private function geturl() { $url = ; if (isset($_SERVER[REQUEST_URI])) { $url = $_SERVER[REQUEST_URI]; else { $url = $_SERVER[Php_SELF]; $url .= empty($_SERVER[QUERY_STRING])?:?.$_SERVER[QUERY_STRING]; return $url; /** * 输出错误信息 private function error($str) { echo div .$str. /div
// $cache = new redisCache(10); //设置缓存生存期 // if ($_GET[clearCache]) $cache- clean(); // else $cache- load(); //装载缓存,缓存有效则不执行以下页面代码 // //页面代码开始 // //页面代码结束 // $cache- write(); //首次运行或缓存过期,生成缓存
相关文章
- redis | 十二、redis之事务
- 快速导入Redis数据,极大提升工作效率(redis导入数据)
- 深入浅出:Redis缓存查看实践(redis查看当前缓存)
- Python实现快速连接Redis数据库(python连接redis)
- Redis读写操作简介:快速高效的内存数据库(redis读写)
- PHP数组实现高性能存储Redis技术(redisphp数组)
- 检查Redis服务是否已启动(检查redis是否开启)
- 查看本地Redis版本一步搞定(查看 本地redis版本)
- 查看Redis缓存一次性快速搞定(查看所有redis缓存)
- 查看Redis服务器的常用命令(查看redis服务命令)
- 使用Redis进行集合缓存优化(用redis缓存集合)
- 测试 PHP 与 Redis 连接的可行性(测试php连接redis)
- 亿排行榜用Redis加速你的排名进步(亿排行榜redis)
- 一步安装完成,轻松构建Redis集群(一键安装redis集群)
- ZK锁与Redis锁安全有效解决分布式锁问题(zk锁和redis锁)
- 使用Yii2框架实现基于Redis的高效缓存(yii2 redis缓存)
- Scala快速写入Redis的实践(scala写入redis)
- 如何查看Redis中的缓存数据(怎么查看缓存redis)
- 如何正确查看Redis缓存(怎么查redis缓存)
- 查看Redis缓存有效解决方案(怎么查redis缓存)
- 查看Redis缓存有效的实现方式(怎么查redis缓存)
- 日志系统 基于Redis缓存环境搭建健壮ELK日志管理系统(基于redis搭建elk)
- 哨兵模式的Redis运维实践(哨兵模式redis运维)
- 如何快速配置Redis连接(安装好redis怎么连接)
- 部署稳健架构Redis高可用主从哨兵部署(redis高可用主从哨兵)
- Redis面试知识点归纳跃升求职赢在起跑线(redis面试知识点归纳)
- 架构Redis集群无需设置从节点(redis集群没有从节点)
- 如何快速关闭本地Redis服务(关闭本地redis服务)
- 奇妙之处Redis集群的奇数优势(redis集群为啥是奇数)
- Redis 50集群模式新技术带来新变化(redis集群5.0模式)
- 深入浅出Redis的集合数据类型(redis 集合数据类型)
- 一步部署Redis镜像,快速构建高性能系统(redis镜像部署)
- Redis缓存实现自动销毁的新方法(redis 自动销毁)
- 如何解决Redis脑裂带来的问题(redis脑裂后怎么处理)
- Redis缓存集群技术让性能瞬间突飞猛进(redis缓存集群技术)
- Redis设计规范一种实践性分析(redis设计规范分析)
- Redis缓存满智能化解决方案(redis缓存满怎么解决)
- 基于Redis缓存实现的客户端系统优化(redis缓存客户端)