管理 Azure Cache for Redis 的伺服器負載

值大小

用戶端應用程式的設計會決定您應該儲存許多小型值或較少量的較大值。 從 Redis 伺服器的觀點,較小的值即表示有較佳的效能。 建議保留小於 100 kB 的值大小。

如果您的設計需要您在 Azure Cache for Redis 中儲存較大的值,則伺服器負載會較高。 在此情況下,您可能需要使用較高的快取層,以確保 CPU 使用量不會限制輸送量。

即使快取有足夠的 CPU 容量,較大的值確實增加延遲,那麼請遵循設定適當的逾時中的指導。

較大的值也會增加記憶體分散的機會,因此請務必遵循設定您的 maxmemory-reserved 設定中的指導。

避免用戶端連線尖峰

建立和關閉連線是 Redis 伺服器成本高的作業。 如果您的用戶端應用程式在少量時間內建立或關閉太多連線,則可能會造成 Redis 伺服器的負擔。

如果您要具現化許多用戶端執行個體,以立即連線到 Redis,請考量交錯建立新連線,以避免連線的用戶端數目激增。

記憶體壓力

伺服器上的記憶體使用量偏高,讓系統更可能需要將資料分頁至磁碟,導致可能會大幅降低系統速度的分頁錯誤。

避免長時間執行的命令

Redis 伺服器是單一執行緒系統。 長時間執行的命令可能會導致用戶端的延遲或逾時,因為伺服器無法在忙於長時間執行命令時回應任何其他要求。 如需詳細資訊,請參閱疑難排解 Azure Cache for Redis 伺服器端問題

監視伺服器負載

新增對伺服器負載的監視,以確保您在發生高伺服器負載時收到通知。 監視可協助您了解應用程式條件約束。 然後,您可以主動行動來減輕問題。 建議您嘗試將伺服器負載保持在 80% 之下,以避免對效能造成負面影響。 持續伺服器負載超過 80% 可能會導致非計劃性容錯移轉。 目前,Azure Cache For Redis 會在入口網站左側的 [資源] 功能表上的 [監視 ] 底下 ,公開兩 個計量: CPU 伺服器負載 。 了解監視伺服器負載時,每個計量所測量的內容很重要。

CPU 計量表示裝載快取之節點的 CPU 使用量。 CPU 計量也包含不是嚴格 Redis 伺服器程序的程序。 CPU 包含反惡意程式碼和其他惡意程式碼的背景程序。 因此,CPU 計量有時可能會突然增加,而且可能不是 Redis 伺服器的 CPU 使用量的完美指標。

[ 伺服器負載 ] 計量代表僅 Redis 伺服器上的負載。 建議您監視 伺服器負載 計量, 而不是 CPU

監視伺服器負載時,我們也建議您檢查伺服器負載的尖峰上限,而不是平均值,因為即使是短暫的尖峰也會觸發容錯移轉和命令逾時。

規劃伺服器維護

確保您有足夠的伺服器容量,可在快取伺服器進行維護時處理尖峰負載。 在尖峰負載下將節點重新開機,以測試您的系統。 如需如何模擬修補程式部署的詳細資訊,請參閱 重新開機

測試容錯移轉後增加的伺服器負載

針對標準和進階 SKU,每個快取都會裝載於兩個節點上。 負載平衡器會將用戶端連線分散至兩個節點。 當主要節點上發生計劃性或非計劃性維護時,節點會關閉所有用戶端連線。 在這種情況下,所有用戶端連線可能落在單一節點上,導致伺服器負載在剩餘的一個節點上增加。 建議您將主要節點重新開機,並確保一個節點可以處理所有用戶端連線,而不會讓伺服器負載太高,以測試此案例。

下一步