Redis 五大数据类型使用

Redis支持字符串(string),哈希(hash),列表(list),无序集合(set),有序集合(zset)等数据结构存储。redis命令不区分大小写,但key严格区分大小写


 一、string数据类型

 

 - ttl命令是返回key的剩余过期时间,单位为秒

- mset和mget批量处理,能够提高操作效率。但redis是单线程模型,如果数据量过大,会造成redis阻塞

- setnx可实现分布式锁

关于自增自减操作命令如下

 

使用场景

1.计数:由于Redis是单线程模型,所以不用考虑并发造成计数不准的问题,通过 incrby 命令,可以正确的得到我们想要的结果

2.限制次数:例如登录次数校验,在5分钟内超过登录错误3次,就不让登录了,每次登录设置key自增一次,并设置该key的过期时间为5分钟后,每次登录检查一下该key的值来进行限制登录


 二、hash数据类型

 

 

 使用场景

  1.查询的时间复杂度是O(1),用于缓存一些信息


 三、list数据类型

字符串列表,按照插入顺序排序,可以将插入的值放到头部(左)和尾部(右),底层是一个链表。
list数据类型具有两个特点:有序、可以重复

 

 使用场景

  1.栈:通过命令 lpush+lpop

  2.队列:命令 lpush+rpop

  3.有限集合:命令 lpush+ltrim

  4.消息队列:命令 lpush+brpop


 四、set数据类型

string类型的无序集合。具有两个特点:无序、不可重复

 

 

使用场景

   利用集合的交并集特性,比如在社交领域,我们可以很方便的求出多个用户的共同好友,共同感兴趣的领域等。


 五、zset数据类型

string类型的有序集合。具有两个特点:有序、不可重复

 

使用场景

  和set数据结构一样,zset也可以用于社交领域的相关业务,并且还可以利用zset 的有序特性,还可以做类似排行榜的业务

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

coo_lw

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值