什么是 Redis

Redis(Remote Dictionary Server)是一个开源的、基于内存的键值存储系统,常用作数据库、缓存和消息中间件。它支持多种数据结构,如字符串、哈希、列表、集合、有序集合等,并提供丰富的操作命令。

主要特点

  1. 高性能:数据存储在内存中,读写速度极快。
  2. 持久化:支持 RDB 和 AOF 两种方式,确保数据在重启后不丢失。
  3. 数据结构丰富:支持字符串、哈希、列表、集合、有序集合等多种类型。
  4. 原子操作:所有操作都是原子的,适合高并发场景。
  5. 发布/订阅:支持消息的发布和订阅功能。
  6. 分布式:通过 Redis Cluster 支持分布式部署。

常见用途

  1. 缓存:加速数据访问,减轻数据库压力。
  2. 会话存储:存储用户会话信息。
  3. 排行榜:利用有序集合实现实时排名。
  4. 消息队列:通过列表或发布/订阅功能实现消息传递。
  5. 计数器:用于统计点击量、在线用户数等。

示例

  • 字符串操作
    SET mykey "Hello"
    GET mykey
    
  • 哈希操作
    HSET user:1 name "Alice" age 30
    HGET user:1 name
    
  • 列表操作
    LPUSH mylist "world"
    LPUSH mylist "hello"
    LRANGE mylist 0 -1
    
  • 集合操作
    SADD myset "apple"
    SADD myset "banana"
    SMEMBERS myset
    
  • 有序集合操作
    ZADD myzset 1 "one"
    ZADD myzset 2 "two"
    ZRANGE myzset 0 -1 WITHSCORES
    

总结

Redis 以其高性能和丰富的数据结构,广泛应用于缓存、会话存储、排行榜和消息队列等场景。