

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# Application Auto Scaling 預測擴展的運作方式
<a name="aas-predictive-scaling-how-it-works"></a>

若要使用預測擴展，請建立預測擴展政策，指定要監控和分析的 CloudWatch 指標。您可以使用預先定義的指標或自訂指標。若要讓預測擴展開始預測未來值，此指標必須至少有 24 小時的資料。

建立政策後，預測性擴展會開始分析過去最多 14 天內的指標資料，以識別模式。它使用此分析來產生未來 48 小時容量需求的每小時預測。預測會使用最新的 CloudWatch 資料，每 6 小時更新一次。隨著新資料傳入，預測擴展能夠持續改善未來預測的準確性。

您可以先在*僅限預測*模式下啟用預測擴展。在此模式中，它會產生容量預測，但不會根據這些預測實際擴展您的容量。這可讓您評估預測的準確性和適用性。

在您檢閱預測資料並決定根據該資料開始擴展之後，請將擴展政策切換至預測和擴展模式。在此模式中：
+ 如果預測預期負載增加，預測擴展將增加容量。
+ 如果預測預期負載減少，預測擴展將不會縮減以移除容量。這可確保只有在需求實際下降時才能縮減，而不只是在預測上。若要移除不再需要的容量，您必須建立目標追蹤或 Step Scaling 政策，因為它們會回應即時指標資料。

根據預設，預測擴展會根據該小時的預測，在每個小時開始時擴展可擴展的目標。您可以在 `PutScalingPolicy` API 操作中使用 `SchedulingBufferTime` 屬性，選擇性地指定較早的開始時間。這可讓您在預測需求之前啟動預測的容量，讓新容量有足夠的時間準備好處理流量。

## 最大容量限制
<a name="aas-ps-max-capcity-limit"></a>

根據預設，當設定擴展政策時，它們不能將容量增加到高於其最大容量。

或者，您可以允許在預測容量接近或超過可擴展目標的最大容量時，自動增加可擴展目標的最大容量。若要啟用此行為，請使用 `PutScalingPolicy` API 操作中的 `MaxCapacityBreachBehavior`和 `MaxCapacityBuffer` 屬性，或 中的**最大容量行為**設定 AWS 管理主控台。

**警告**  
允許自動增加最大容量時，請小心。最大容量不會自動減少回原始最大容量。

## 建立、管理及刪除擴展政策常用的命令
<a name="aas-ps-common-commands"></a>

使用預測擴展政策的常用命令包括：
+ `register-scalable-target` 將 AWS 或自訂資源註冊為可擴展的目標、暫停擴展，以及繼續擴展。
+ `put-scaling-policy` 建立預測擴展政策。
+ `get-predictive-scaling-forecast` 擷取預測擴展政策的預測資料。
+ `describe-scaling-activities` 傳回 中擴展活動的相關資訊 AWS 區域。
+ `describe-scaling-policies` 傳回 中擴展政策的相關資訊 AWS 區域。
+ `delete-scaling-policy` 刪除擴展政策。

**自訂指標**  
自訂指標可用來預測應用程式所需的容量。當預先定義的指標不足以擷取應用程式的負載時，自訂指標很有用。

## 考量事項
<a name="aas-ps-considerations"></a>

使用預測擴展時，適用下列考量。
+ 確認預測擴展是否適合您的應用程式。如果應用程式顯示特定於星期幾或星期幾的重複負載模式，則非常適合預測擴展。先評估預測，再讓預測擴展主動擴展您的應用程式。
+ 預測擴展需要至少 24 小時的歷史資料才能開始預測。不過，如果歷史資料跨越整整兩週，那麼預測會更加有效。
+ 選擇能準確代表應用程式完整負載，且是應用程式最重要擴展方面的負載指標。