LRU (Least Recently Used) 緩存
LRU 是最常用的緩存淘汰策略,當達到容量時淘汰最近最少使用的項目。
概述
LRU(Least Recently Used)基於時間局部性原理,假設最近訪問的數據很可能再次被訪問。當緩存滿時,淘汰最久未使用的數據。
特性
- 命中率: 85%
- 內存佔用: 低
- 並發性能: 中等
- 實現複雜度: 簡單
使用場景
- 通用緩存
- 頻繁訪問的數據
- 可預測的訪問模式
- Web 應用緩存
- 數據庫查詢緩存
快速開始
安裝
基本使用
高級使用
API 參考
構造函數
主要方法
性能特點
- 時間複雜度:
- Set: O(1)
- Get: O(1)
- Delete: O(1)
- 空間複雜度: O(n),其中 n 是緩存容量
最佳實踐
- 選擇合適的緩存大小: 根據可用內存和訪問模式調整
- 監控命中率: 定期檢查命中率,低於 50% 時考慮調整
- 使用過期時間: 對於時效性數據,使用 SetWithTTL
- 批量操作: 對於大量數據,使用 SetMany 和 GetMany 提高性能