redis一般在哪里使用

redis一般在哪里使用

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一般在哪里使用的详细内容,更多请关注https://www.sxiaw.com/其它相关文章!