Redis(Remote Dictionary Server)是一個開源的、基于內存的鍵值存儲系統,常用作數據庫、緩存和消息中間件。它支持多種數據結構,如字符串、哈希、列表、集合、有序集合等,并提供豐富的操作命令。
主要特點
- 高性能:數據存儲在內存中,讀寫速度極快。
- 持久化:支持 RDB 和 AOF 兩種方式,確保數據在重啟后不丟失。
- 數據結構豐富:支持字符串、哈希、列表、集合、有序集合等多種類型。
- 原子操作:所有操作都是原子的,適合高并發場景。
- 發布/訂閱:支持消息的發布和訂閱功能。
- 分布式:通過 Redis Cluster 支持分布式部署。
常見用途
- 緩存:加速數據訪問,減輕數據庫壓力。
- 會話存儲:存儲用戶會話信息。
- 排行榜:利用有序集合實現實時排名。
- 消息隊列:通過列表或發布/訂閱功能實現消息傳遞。
- 計數器:用于統計點擊量、在線用戶數等。
示例
- 字符串操作:
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 以其高性能和豐富的數據結構,廣泛應用于緩存、會話存儲、排行榜和消息隊列等場景。