redis中list类型

Redis List 类型 详解 + 应用场景

一、先搞懂 List 是什么

Redis 的 List 本质就是双向链表特点:

  • 左边能加、右边能加
  • 左边能删、右边能删
  • 两头操作极快
  • 中间查数据慢(链表特性)

你就把它理解成:一根排队的队伍,头尾随便进出

底层是双向链表,不是数组。


二、List 核心特点

  1. 有序、可重复
  2. 两头增删 O (1) 超快
  3. 中间遍历慢
  4. 适合做 队列、栈、消息排队

三、常用命令

redis

复制代码
lpush list1 a b c    # 左边加(左进)
rpush list1 x y z    # 右边加(右进)
lpop list1           # 左边出
rpop list1           # 右边出
lrange list1 0 -1    # 查看全部元素

四、List 经典应用场景

1. 消息队列 / 任务队列(最常用)

生产者往右边塞 ,消费者从左边拿

  • 订单任务、异步任务、日志推送、秒杀排队
  • 实现简易消息队列

流程:

  • 生产者:rpush queue 任务1
  • 消费者:lpop queue

2. 栈结构(后进先出)

一边进、同一层出lpush + lpop 就是栈

适合:操作记录、撤销功能。

3. 朋友圈 / 时间线流

朋友圈、微博关注动态

  • 发一条动态就 lpush 进自己的列表
  • 查看朋友圈直接 lrange 分页读取

天然按时间倒序,完美适配。

4. 排行榜简单版(时间序)

按发布时间排序的列表,比如:最新留言、最新评论列表

5. 限流排队、秒杀排队

秒杀时大量用户请求用 List 做排队缓冲,削峰限流。

6. 聊天室在线用户列表

维持一个有序在线用户队列。


五、一句话总结

Redis List 是双向链表 ,两头增删极快;适用场景:简易消息队列、任务队列、朋友圈时间线、评论列表、栈结构、秒杀排队、日志排队

相关推荐
钝挫力PROGRAMER8 分钟前
MySQL 数据截断错误 #22001:原因分析与解决方案
数据库·mysql
Database_Cool_27 分钟前
记忆张量MemOS + 阿里云PolarDB一站式记忆管理方案发布:给AI装上不断片的记忆
数据库·人工智能·阿里云
码农阿豪30 分钟前
上线前能跑,上线后挂了,三个隐性的SQL陷阱
数据库·sql
春卷同学32 分钟前
032-关系型数据库在记账应用中的建模与查询优化
java·jvm·数据库
foolishlee1 小时前
openGauss慢SQL记录相关线程
数据库
乖巧的妹子1 小时前
SQL知识点
数据库·sql·oracle
数行拙笔1 小时前
Redis---list类型
数据库·redis·缓存
人工智能培训2 小时前
世界模型内嵌,感知交互跃迁
大数据·数据库·人工智能·神经网络·生成对抗网络
隔壁阿布都2 小时前
ClickHouse完整指南
服务器·数据库·clickhouse
TDengine (老段)3 小时前
TDengine JOIN 完整语法 — Inner/Outer/ASOF/Window 全语法详解
java·大数据·数据库·物联网·时序数据库·tdengine·涛思数据