Redis 常用数据类型

Redis 常用数据类型

Redis 不只是缓存,它有 5 种常用数据类型,用对了能解决很多问题。

1. String(字符串)

最基本的类型,一个 key 对应一个 value。

# 设置
SET name "张三"

# 读取
GET name

# 自增(计数器)
INCR page_view

# 设置过期时间(秒)
EXPIRE token 3600

# 查看过期时间
TTL token

适用场景: 缓存、计数器、分布式锁。

2. Hash(哈希)

适合存对象。

# 设置字段
HSET user:1 name "张三" age 25

# 获取字段
HGET user:1 name

# 获取所有字段
HGETALL user:1

# 删除字段
HDEL user:1 age

适用场景: 用户信息、商品信息。

3. List(列表)

有序队列,先进先出。

# 从左边插入
LPUSH messages "消息1"
LPUSH messages "消息2"

# 从右边插入
RPUSH messages "消息3"

# 从左边弹出
LPOP messages

# 查看列表
LRANGE messages 0 -1

适用场景: 消息队列、最新消息列表。

4. Set(集合)

无序不重复。

# 添加元素
SADD tags "PHP" "MySQL" "Linux"

# 查看所有元素
SMEMBERS tags

# 判断是否存在
SISMEMBER tags "PHP"

# 交集
SINTER set1 set2

适用场景: 标签、共同好友、去重。

5. ZSet(有序集合)

每个元素带分数,按分数排序。

# 添加元素
ZADD rank 100 "张三"
ZADD rank 90 "李四"
ZADD rank 80 "王五"

# 查看排行(从高到低)
ZREVRANGE rank 0 -1 WITHSCORES

# 获取排名
ZREVRANK rank "张三"

适用场景: 排行榜、热度排序。

总结

类型 特点 适用场景
String 简单键值 缓存、计数器
Hash 存对象 用户信息
List 有序队列 消息队列
Set 不重复 标签、去重
ZSet 带分数排序 排行榜

Redis 用熟了,能解决很多业务问题。


emer 发布于  2026-10-7 07:15 

Redis 数据结构详解

Redis 五种数据结构详解

Redis 不只是缓存,它的五种数据结构各有各的用处,搞懂了才能用对地方。

1. String(字符串)

最基础的数据结构,存字符串、数字都行。

SET name "张三"
GET name
INCR count
SET token "abc123" EX 3600

应用场景:缓存用户信息、计数器、分布式锁、会话存储。

2. Hash(哈希)

存键值对,适合存对象。

HSET user:1 name "张三" age 25 city "北京"
HGET user:1 name
HGETALL user:1

应用场景:存用户信息、商品信息,比 String 存 JSON 更省空间。

3. List(列表)

有序列表,可以从头或尾加元素。

LPUSH messages "hello"
LPUSH messages "world"
LRANGE messages 0 -1

应用场景:消息队列、最新消息列表、朋友圈时间线。

4. Set(集合)

无序不重复集合。

SADD tags "PHP"
SADD tags "MySQL"
SMEMBERS tags
SISMEMBER tags "PHP"

应用场景:标签、共同好友、去重。

5. ZSet(有序集合)

每个元素带分数,按分数排序。

ZADD rank 100 "张三"
ZADD rank 90 "李四"
ZREVRANGE rank 0 9 WITHSCORES

应用场景:排行榜、计分板、优先级队列。

总结

五种数据结构各有用处:

  • String:简单缓存、计数器
  • Hash:存对象
  • List:队列、时间线
  • Set:去重、标签
  • ZSet:排行榜

选对数据结构,性能才能发挥出来。


emer 发布于  2026-10-4 10:50 
'); })();