PHP Redis 缓存实例

还在学习redis中,所以本文会持续更新

学习redis一段时间了,发现在网上都有说到使用场景,但是很少具体的实例
下面是我自己通过学习总结出的简单实例,如果有哪里不对欢迎指出

1、使用redis作为网页数据缓存


  • 先从数据库取出数据转为json数据存在list中
  • 再从list中取出json转为数据调用

redis的速度快得不行,我这数据就200多条,数据库查要1秒多,使用redis就0.0几秒,如果数据更多的话差别就跟明显了,高性能redis 上代码
function tt(){
        $buydan = D('shuxin');
        $redis =new \Redis();
        $redis->connect('127.0.0.1', 6379);
        if ($redis->get('putIn') != 'yes') {//第一次进来,缓存数据,比如说我想缓存蔬菜这个分类的所有数据,就用蔬菜这个分类作为键值
            $result = $buydan->field('sp_id,sp_name')->where('sp_fen="蔬菜"')->select();
            $result2 = $buydan->field('sp_id,sp_name')->where('sp_fen="肉类"')->select();
            //蔬菜1
            $json=json_encode($result);
            //肉类
            $json2=json_encode($result2);
            $redis->del('shucai', 'routlei', 'putIn');//把键值删除,防止重复
            $redis->lPush('shucai', $json);
            $redis->lPush('roulei', $json2);
            $redis->set('putIn', 'yes');
            echo 'PUTIN SUCCESS'."
"
; } else {//不是第一次 echo 'NO FIRST'."
"
; } $this->display(); //对应的模板html就一个input请求 下面的t2 } //请求地址 function t2(){ $par = I('post.'); $name = $par['name']; $redis =new \Redis(); $redis->connect('127.0.0.1', 6379); //获取到数据 $json=$redis->lRange($name, 0, -1); $res=json_decode($json[0],true);//加true是把json转为数组使用 var_dump($res); }

Redis得安装和PHP的redis扩展可以看我以前的文章 redis扩展安装
欢迎关注 我的简书
欢迎关注微信公众号,每天分享技术和有趣时尚新鲜文章

你可能感兴趣的:(php)