我的 Amazon ElastiCache 節點的可用記憶體永遠小於 Amazon ElastiCache 定價列出的值。原因為何?
解決方法
ElastiCache 定價頁面會針對每個支援的節點類型,顯示以 GiB 為單位的可用記憶體。但是,在預設參數群組,會保留一定百分比的記憶體以供備份與容錯移轉作業使用。對於 2.8.22 之前的 Redis 版本,最佳做法是保留總記憶體的 50%。對於 2.8.22 之後的 Redis 版本,最佳做法是保留總記憶體的 25%。對此進行規範的參數是 reserved-memory (適用於 2017 年 3 月 16 日之前開始使用 ElastiCache 的客戶) 或 reserved-memory-percent (適用於 2017 年 3 月 16 日或之後開始使用 ElastiCache 的客戶)。
例如,使用預設參數群組的 cache.t3.micro 節點類型的叢集具有 0.5 GiB 的總記憶體。由於 reserved-memory-percent 參數,此記憶體的 25% 會被保留。因此,此節點的可用記憶體是 0.375 GiB。
若要查看 ElastiCache 節點的可用記憶體,請執行下列動作:
-
使用 redis-cli 工具或您選擇的其他工具連接到叢集。如需使用 redis-cli 工具的相關資訊,請參閱連線至 Redis 叢集或複寫群組 (Linux)。
-
執行 info memory 命令並檢查 maxmemory 值。以下範例輸出是使用連接到 IP 地址為 172.31.35.93 的 Redis 服務器的 redis-cli 所產生。
172.31.35.93:6379> info memory
# Memory
maxmemory:402653184
注意:****最大記憶體值以位元組 (byte) 為單位。402653184 位元組相當於0.375 千兆位元組 (GiB)。Redis 引擎使用位元組或 MB 來表示記憶體。AWS 文件使用 GiB 來表示記憶體。儘管這兩個單位之間的差異很小並且幾乎沒有差異,但差異會根據節點記憶體的大小呈指數增長。您可以使用您選擇的線上計算機在這些單位之間進行轉換。
相關資訊
管理保留記憶體