Redis学习笔记(二)--list结构及命令详解

本文详细介绍了 Redis 中 list 数据结构的使用方法,包括各种命令如 lpush、lrange 和 rpoplpush 的功能与应用场景,例如如何利用这些命令实现安全队列和长轮询等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

书接上文Redis学习笔记(一)

 2-----------------list结构及命令详解

1.lpush key value从左面往链表中添加 rpush key value 从右面添加

2.lrange key start stop 返回链表中[start, stop]中的元素

3.lpop  rpop弹出元素

4.lrem key count value 比如 lrem key 3 b 从链表左开始删除,直到删除3个b

如果count< 0从尾部删除

5.ltrim key start stop 截取链表的一小段

6.lindex key index 单独取出链表中index上的value

7.llen key 查看链表上有几个单元

8.linsert key befor|after value newvalue 在key上找到value 并且在value前或者后加newvalue

9.rpoplpush sourse dest 把sourse的尾部拿出放在dest的头部(这里需要知道这个操作是原子操作

适合场景:task+bak双链表完成安全队列

当从链表task中取任务的时候pop可能出现未知错误(比如pop出来以后执行相关任务失败),所以我们可以加bak链表,每pop一个task任务就添加到bak链表中,这时候返回值就是要执行的任务,如果失败再调用bak重新执行,成功则pop出bak链表。

10.brpop, blpop  key timeout等待弹出key的尾/头元素 timeout为等待超时时间,如果timeout为0则已知等待。

这里可以启动两个redis-cli操作同一个key进行测试

适合场景:长轮询Ajax, 在线聊天的时候可以用到。

关于长轮询,ajax: https://www.cnblogs.com/chengdabelief/p/6686493.html






评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

戴着眼镜看不清

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

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

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

打赏作者

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

抵扣说明:

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

余额充值