美文网首页
PHP操作Redis增删查改笔记

PHP操作Redis增删查改笔记

作者: LeeYaMaster | 来源:发表于2020-03-25 18:00 被阅读0次

    业务需求:
    我要解决课程秒杀,于是我用了redis五种数据类型的字符串类型,原因是因为有个自增,自减,适合秒杀。因为刚用PHP做秒杀,如果有更好的解决方式,请赶紧告诉我。


    表结构1 表结构2
                //增加
                $redis=my_redis();
                $redis->set('course_1',20);
                $redis->set('user_1' ,json_encode([]));
    
                //修改,选课,用户数量减少
                $redis = my_redis();
                if($redis->get('course_1') < 0){
                    $this->apiReturn(303,'课程已被抢完');
                }
                $redis->decr('course_1');
                $data = $redis->get('user_1');//获取key [value]
                $data = json_decode($data,JSON_UNESCAPED_UNICODE);
                array_push($data,5);
                $data = json_encode($data);
                $redis->getset('user_1',$data);
    
                //修改,用户取消选课,用户数量增加
                $redis = my_redis();
                $redis->incr('course_1');
                $data = $redis->get('user_1');//获取key [value]
                $data = json_decode($data,JSON_UNESCAPED_UNICODE);
                $data = array_diff($data, [5]);
                $data = json_encode($data);
                $redis->getset('user_1',$data);
    
                //查询所有信息
                $redis = my_redis();
                $people_num =  $redis->get('course_1');
                $data = $redis->get('user_1');
                $data = json_decode($data,JSON_UNESCAPED_UNICODE);
                $result = ['people_num'=>$people_num,'user'=>$data];
    

    https://www.cnblogs.com/hbf66-88/p/11536232.html,另外推荐一篇jmeter写的很好的博客,我先用的就是这个。

    相关文章

      网友评论

          本文标题:PHP操作Redis增删查改笔记

          本文链接:https://www.haomeiwen.com/subject/zkpxuhtx.html