redis五大数据类型使用场景
原创
Redis五大数据类型使用场景
1. 字符串(String)
字符串类型是Redis最基础的数据结构,它用于存储单个值。在实际使用场景中,字符串类型可以用来存储:
- 用户信息(如用户名、密码)
- 配置信息(如系统配置、应用配置)
- Web应用会话缓存
set username "张三"
set password "123456"
hmset user:1 name "张三" age 25 email "zhangsan@example.com"
2. 列表(List)
列表类型用来存储多个有序的字符串,它是一个链表结构。在实际使用场景中,列表类型可以用来存储:
- 消息队列(如用户消息、任务队列)
- 文章列表
- 评论列表
lpush messages "Hello"
lpush messages "World"
rpop messages
3. 集合(Set)
集合类型用来存储多个无序的字符串,集合中的元素具有唯一性。在实际使用场景中,集合类型可以用来存储:
- 标签(如文章标签、用户标签)
- 关注列表
- 好友关系
sadd tags "Redis"
sadd tags "NoSQL"
smembers tags
4. 哈希(Hash)
哈希类型是一个键值对集合,它用来存储多个键值对。在实际使用场景中,哈希类型可以用来存储:
- 用户信息(如姓名、年龄、邮箱)
- 商品信息(如商品名、价格、库存)
- 配置信息
hmset user:1 name "张三" age 25 email "zhangsan@example.com"
hgetall user:1
5. 有序集合(Sorted Set)
有序集合类型是一个有序的集合,它内部使用HashMap和跳跃表(SkipList)来保证数据的存储和有序性。在实际使用场景中,有序集合类型可以用来存储:
- 排行榜(如用户积分、文章点赞数)
- 社交网络中的关注列表
- 带权重的任务队列
zadd rankings 100 "张三"
zadd rankings 200 "李四"
zrange rankings 0 -1 withscores