Redis数据结构详解--列表

Redis 列表是简单的字符串列表,按照插入顺序排序,常用命令:

  • LPUSH key value1 [value2...] 在列表头部插入一个或多个值
  • RPUSH key value1 [value2...] 在列表尾部插入一个或多个值
  • LPOP key 移除并获取列表头部第一个元素
  • RPOP key 移除并获取列表尾部最后一个元素
  • LRANGE key start stop 获取列表指定索引范围内的元素(0 表示第一个元素,-1 表示最后一个元素)
  • LLEN key 获取列表长度
  • BLPOP key [key...] timeout 从列表头部阻塞弹出元素,超时时间设置为 0 表示无限阻塞
  • BRPOP key [key...] timeout 从列表尾部阻塞弹出元素,超时时间设置为 0 表示无限阻塞
  • LTRIM key start stop 保留列表指定索引范围内的元素(删除范围外的元素)

📌 关键特性说明

  • 阻塞操作:BLPOP/BRPOP​ 常用于实现消息队列,当列表为空时线程会挂起等待新元素

    # 示例:实现简单任务队列
    > LPUSH tasks "task1" "task2"  # 生产者推送任务
    (integer) 2
    > BRPOP tasks 0                # 消费者阻塞获取任务
    1) "tasks"
    2) "task1"
    
  • 范围索引:LRANGE​ 和 LTRIM​ 支持负数索引(例如 LRANGE key 0 -1​ 表示获取全部元素)

  • 原子性:所有列表操作均为原子性,适用于高并发场景

使用场景:消息队列、最新动态(如朋友圈时间线)、分页查询。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值