redis用在哪些方面?主要用在什么场景?

KLQ 2020-07-03 10:22:07 java常见问答 6216

你知道redis主要用在哪些场景吗?下面要给大家介绍到的,就是和redis使用场景相关的内容,一起来了解一下吧。

redis使用场景介绍

1、队列-因为redis有list push和list pop这样的命令,所以可以非常方便的执行队列操作;

2、分页、模糊搜索-redis的set集合当中,提供了一个zrangebylex方法,下面是具体的语法:

ZRANGEBYLEX key min max [LIMIT offset count]

通过ZRANGEBYLEX zset - + LIMIT 0 10,能够进行分页数据查询,在这当中,- +表示获取全部数据;

zrangebylex key min max,这个能够返回字典区间的数据,依托这个特性,能够进行模糊查询功能;

3、热点数据的缓存-因为redis访问速度块并且所支持的数据类型也是非常的丰富,所以,非常的适合用来存储热点数据,除此之外,还能够结合expire,设置过期时间,之后,再进行缓存更新操作;

4、延时操作

5、点赞、好友等相互关系的存储-redisset对外提供的功能和list类似是一个列表的功能,比较特别的地方在于,set是能够自动排重的,在你要存储一个列表数据,又不希望有重复数据的时候,set就是一个非常好的选择了,除此之外,set提供了判断某个成员是否在一个set集合内的重要接口,这个也是list不能够提供的;

又或者是在微博应用当中,每个用户关注的人存在一个集合中,就会非常简单的实现两个人的共同好友功能;

6、分布式锁

7、计数器相关问题-redis因为incrby命令,能够实现原子性的递增,所以,能够运用于高并发的秒杀活动、分布式序列号的生成、具体业务还体现在例如,限制一个手机号发多少条短信、一个接口一分钟限制多少请求、一个接口一天限制调用多少次等等;

8、限时业务的运用-redis当中,能够使用expire命令设置一个键的生存时间,到达时间之后,redis会将它删除;

凭借这个特性,能够运用在一些秒杀、限时优惠等等活动当中;

9、排行榜相关问题-关系型数据库在排行榜方面查询速度都是比较慢的,所以,能够借助redis的SortedSet进行热点数据的排序;

在什么情况下用redis你都了解了吗?希望上面的举例能够对你有所帮助哦,更多java项目中常见问题,请继续关注奇Q工具网来了解吧。

推荐阅读:

redis和mysql的区别是什么?区别详解

为什么Redis单线程快?原因是什么?

redis常见面试题有哪些?redis集群面试题及答案整理