在 Java 開發中,Redis 作為高性能內存數據庫,通常用于存儲高頻訪問、低延遲要求、短期有效或需要原子操作的數據。以下是 Redis 內存中常見的數據類型及對應的使用場景,適合面試回答:
1. 緩存數據(高頻訪問,降低數據庫壓力)
- 用戶會話(Session):存儲用戶登錄狀態、臨時 Token(如 JWT)。
- 熱點數據:如商品詳情、配置信息、頁面靜態化內容。
- 查詢結果緩存:數據庫查詢結果(如
user:1001:info
),減少重復查詢。
數據結構:String(JSON 序列化)、Hash(存儲對象字段)。
2. 計數器與限流(原子性操作)
- 訪問量統計:文章閱讀量、用戶點贊數(
INCR article:1001:views
)。 - 限流控制:接口請求頻率限制(如
IP:127.0.0.1:rate
,使用INCR
+ 過期時間)。 - 秒殺庫存:商品庫存扣減(
DECR s