Azure Cache for Redis 和卓越營運
Azure Cache for Redis 根據 Redis (Remote Dictionary Server) 軟體提供記憶體內部資料存放區。 這是安全的資料快取和訊息代理程式,為應用程式提供高輸送量且低延遲的資料存取。
支援卓越營運的最佳做法包括:
下列各節包含 Azure Cache for Redis 特有的設計考量、設定檢查清單及建議的設定選項。
設計考量
Azure Cache for Redis 服務等級協定 (SLA) 只涵蓋標準層和進階層快取。 不涵蓋基本層。
Redis 是機碼值組的記憶體內部快取,預設有高可用性 (HA),但基本層除外。 Azure Cache for Redis 有三個階層:
基本:不建議用於生產工作負載。 基本層適用於:
- 單一節點
- 多種大小
- 部署
- 測試
- 非關鍵性工作負載
標準:雙節點主要和次要設定中的複寫快取,由 Microsoft 管理,具有高可用性 SLA。
進階:涵蓋所有標準層功能,還包含下列其他功能:
- 硬體和效能都比基本層或標準層更快。
- 快取更大,最大到
120GB
。 - 資料持續性,包括 Redis 資料庫檔案 (RDB) 和僅附加檔案 (AOF)。
- VNET 支援。
- Clustering (叢集)
- 異地複寫:次要快取位於另一個區域,並從主要快取複寫資料,以確保災害復原。 若要容錯移轉至次要快取,必須手動取消連結快取,次要快取才可供寫入。 需要以次要的快取連接字串來更新寫入 Redis 的應用程式。
- 可用性區域:跨可用性區域部署快取和複本。
注意
每個部署預設為每個分區各一個複本。 目前,對於具有多個複本的部署,持續性、群集和異地複寫全部停用。 節點會平均分散到所有區域。 您的複本計數應該
>=
區域數目。 - 匯入和匯出。
Microsoft 保證客戶在快取端點與 Microsoft 的網際網路閘道之間至少 99.9%
的時間有連線能力。
檢查清單
設定 Azure Cache for Redis 時,您是否考量到卓越營運?
- 更新排程。
- 監視快取並設定警示。
- 在 VNET 內部署快取。
- 在解決方案內使用正確的快取類型 (本機、角色中、受控、Redis)。
- 視業務需求而定,設定資料持續性將快取的複本儲存至 Azure 儲存體,或使用異地複寫。
- 對 Redis 使用一個靜態或單一實作的連線多工器,並遵循最佳做法指南。
- 檢閱如何管理 Azure Cache for Redis。
組態建議
探索下表中的建議,將 Azure Cache for Redis 的卓越營運設定最佳化:
建議 | 描述 |
---|---|
更新排程。 | 排程將 Redis 伺服器更新套用至快取的日期和時間,這不包括 Azure 更新或 VM 作業系統的更新。 |
監視快取並設定警示。 | 為例外狀況、高 CPU、高記憶體使用量、伺服器負載和收回的金鑰設定警示,以深入解析何時縮放快取。 如果需要縮放快取,則了解何時縮放很重要,因為在縮放活動遷移資料期間會增加 CPU。 |
在 VNET 內部署快取。 | 讓客戶進一步控制可連線至快取的流量。 請確定子網路有足夠的位址空間可供部署快取節點和分區 (叢集)。 |
在解決方案內使用正確的快取類型 (本機、角色中、受控、Redis)。 | 當快取資料有下列情況時,分散式應用程式通常會實作下列兩個策略或其中之一: - 使用私人快取,將資料保留在執行應用程式或服務執行個體的機器本機上。 - 使用共用快取,作為可供多個流程和機器存取的共同來源。 在這兩種情況下,用戶端和伺服器端都可以執行快取。 用戶端快取是透過為系統提供使用者介面的處理程序來完成,例如網頁瀏覽器或傳統型應用程式。 伺服器端快取是透過提供從遠端執行的商務服務的處理程序來完成。 |
視業務需求而定,設定資料持續性將快取的複本儲存至 Azure 儲存體,或使用異地複寫。 | 資料持續性:如果正本和複本重新開機,則會從儲存體帳戶自動載入資料。 異地複寫:次要快取與主要快取需要取消連結。 次要現在變成主要,還可以接收「寫入」。 |
檢閱如何管理 Azure Cache for Redis。 | 了解快取重新開機為何會遺失資料,以及如何測試應用程式的復原能力。 |
來源成品
若要識別不在進階層的 Redis 執行個體,請使用下列查詢:
Resources
| where type == 'microsoft.cache/redis'
| where properties.sku.name != 'Premium'