![](https://img.php.cn/upload/article/000/000/029/5de1c12dd72d0242.jpg)
redis是一个key-value存储系统,可以用在如下场景,1,2,5用得较多
1、缓存
热点数据(经常会被查询,但是不经常被修改或者删除的数据),首选是使用redis缓存。 (推荐学习:Redis视频教程)
2、计数器
单线程避免并发问题,高性能,如减库存。
3、队列
相当于消息系统,ActiveMQ,RocketMQ等工具类似,但是个人觉得简单用一下还行,如果对于数据一致性要求高的话还是用RocketMQ等专业系统。
4、位操作
使用setbit、getbit、bitcount命令,如统计用户签到,去重登录次数统计,某用户是否在线状态等;
redis内构建一个足够长的数组,每个数组元素只能是0和1两个值,然后这个数组的下标index用来表示我们上面例子里面的用户id(必须是数字哈),那么很显然,这个几亿长的大数组就能通过下标和元素值(0和1)来构建一个记忆系统,上面我说的几个场景也就能够实现。用到的命令是:setbit、getbit、bitcount
5、分布式锁与单线程
验证前端的重复请求(可以自由扩展类似情况),可以通过redis进行过滤:每次请求将request Ip、参数、接口等hash作为key存储redis(幂等性请求),设置多长时间有效期,然后下次请求过来的时候先在redis中检索有没有这个key,进而验证是不是一定时间内过来的重复提交。
秒杀系统,基于redis是单线程特征,防止出现数据库“爆破”
6、最新列表
redis的 LPUSH命令构建List。
7、排行榜
谁得分高谁排名往上。命令:ZADD(有序集,sorted set)。
更多Redis相关技术文章,请访问Redis入门教程栏目进行学习!
以上就是redis一般在哪里使用的详细内容,更多请关注php中文网其它相关文章!
![php中文网最新课程二维码](/static/images/article_wechat2021.jpg?1111)
声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理
- 上一篇:Redis三种部署方案图文详解
- 下一篇:redis数据保存在哪里
网友评论
文明上网理性发言,请遵守 新闻评论服务协议
我要评论