我想要對 Amazon Aurora PostgreSQL 相容版本的 Amazon Aurora Serverless v2 擴展問題進行疑難排解。
如果 Aurora Serverless v2 即使在資料庫沒有負載的情況下也沒有縮減規模至最小容量,則您必須將參數更新為其預設值。Aurora Serverless v2 使用 Aurora 容量單位 (ACU) 來衡量運算容量,每個 ACU 大約代表 2 GiB 的記憶體,並具有對應的 CPU 和網路資源。
如果您的資源有太多閒置連線,或者您長期具有高 CPU 使用率,則您無法向上擴展至最大容量。如果您將最小容量組態為 0.5 ACU 並使用自動暫停功能,則可能會遇到冷啟動問題,進而導致連線或交易逾時錯誤。
如果您從佈建的執行個體遷移至無伺服器執行個體,請檢閱佈建執行個體的 BufferCacheHitRatio 指標,以了解 DB 執行個體的行為。如果該指標在 Aurora Serverless 中不穩定且下降,請根據您的資料庫緩衝區快取效能需求來增加最小 ACU。最小 ACU 越高,資料庫就能越快向上擴展,以滿足應用程式的需求。如需更多資訊,請參閱 Choosing the Aurora Serverless v2 capacity range for an Aurora cluster (為 Aurora 叢集選擇 Aurora Serverless v2 容量範圍)。
若要設定最小 ACU,請完成下列步驟:
閒置的 Aurora Serverless v2 寫入器和讀取器可以縮減規模至您為叢集指定的最小 ACU 值。在後端執行的背景處理和管理工作,可能會導致無伺服器執行個體無法縮減規模至最小 ACU。
如需更多資訊,請參閱 Troubleshooting Aurora Serverless v2 capacity issues (對 Aurora Serverless v2 容量問題進行疑難排解)。
資料庫參數 (例如 max_connections 和 max_locks_per_transaction) 會影響擴展行為。自訂值不支援資料庫擴展至最小容量。若要移除 max_connections 和 max_locks_per_transaction 的自訂值,請將參數設為預設值,接著重新啟動主要資料庫執行個體。
若要減輕資料庫的連線壓力,請使用 Amazon RDS Proxy 來設定具備重試邏輯和指數退避的連線集區。
若要減輕負載並改進調擴展效能,請定期檢閱並最佳化資料庫查詢。若要最佳化查詢,請執行 ANALYZE 和 VACUUM PostgreSQL 命令。如需更多資訊,請參閱 PostgreSQL 網站上的 ANALYZE 與 Routine Vacuuming (例行清理)。
若要追蹤實際的 ACU 使用量,請監控適用於 Aurora Serverless 2 的 Amazon CloudWatch 指標:ServerlessDatabaseCapacity、ACUUtilization、CPUUtilization 和 FreeableMemory。若要接收 Aurora Serverless v2 擴展問題的主動警示,您必須設定 CloudWatch 警示。如果 ACUUtilization 和 CPUUtilization 指標接近 100%,代表您的 Aurora Serverless v2 的最大 ACU 容量不足,且處於極高負載的狀態。
若要為擴展失敗或延長的高容量期間設定警示,請參閱 Creating CloudWatch alarms to monitor Amazon Aurora (建立 CloudWatch 警示以監控 Amazon Aurora)。
設定 Aurora Serverless v2 的自動暫停與恢復值。停止並重新啟動資料庫,以回收可能隨時間累積的記憶體碎片。
**注意:**如果您停止並重新啟動資料庫,資料庫將會出現停機時間。
Understanding how ACU minimum and maximum range impacts scaling in Amazon Aurora Serverless v2 (了解 ACU 最小和最大範圍如何影響 Amazon Aurora Serverless v2 中的擴展)
Jimmy
已提問 3 年前
roose
已提問 2 年前
PEautodesign
Howard
JasonKao
Tim
已發佈 2 年前