遷移流量

流量遷移功能會在應用程式的服務內切換不同版本的要求轉送服務,將流量從一或多個版本移動至單一新版本。

如要瞭解在應用程式的兩個以上版本之間拆分流量的相關資訊,請參閱流量拆分一文。

事前準備

在設定傳送至版本的流量之前,請確認您的使用者帳戶含有必要權限

逐步遷移流量

在標準環境中,您可以選擇立即或逐步將要求轉送至目標版本。

根據預設,系統會停用暖機要求,且會立即將流量遷移至某個版本。

如果想將流量逐漸遷移到某個版本,也可以選擇啟用暖機要求。如果您在沒有任何執行中執行個體的情況下,立即將流量遷移到新版本,則載入要求的延遲時間可能會遽增。如果部署新版本時採用現有版本的名稱,則會導致立即進行流量遷移。系統會立即關閉舊版本的所有執行個體。此外還要為新版本載入要求,因此可能延遲時間可能會遽增。

如果已啟用暖機要求,則您只能藉由指定立即遷移流量,才能在位於不同環境的版本之間遷移流量。

新增暖機要求至應用程式

如果已啟用暖機要求,則必須在新的執行個體收到任何使用者要求之前,就先將「暖機要求」傳送至這些新的執行個體,才能逐步遷移流量。暖機要求允許目前接收流量的版本來處理要求,因此可縮短使用者回應時間;但是在建立新執行個體的同時,將流量遷移至新版本還是會耗費一點時間。

如果沒有啟用暖機要求,則在尚未建立新的執行個體之前,系統就已將使用者要求傳送給這些新的執行個體。建立新的執行個體和載入應用程式程式碼會導致一些延遲,連帶使用者回應也會發生延遲。

如要避免延遲並啟用暖機要求,請將 inbound_services 元素加入設定檔,然後再將應用程式部署到 App Engine。

例如,您先將以下指令加入 app.yaml 檔案,然後再部署到 App Engine:

inbound_services:
- warmup

如要瞭解啟用暖機要求的完整詳細資訊,請參閱設定暖機要求以改善效能一文。

將流量遷移至新版本

主控台

要在 GCP 主控台中遷移流量,請前往「版本」頁面:

前往版本頁面

  1. 選取您要遷移 100% 流量的目的地版本。
  2. 按一下 [Migrate traffic] (遷移流量)
  3. 選用:啟用暖機要求時,流量會逐步遷移。如要立即遷移流量,請選取「Show advanced options」(顯示進階選項) 區段下的選項

gcloud

安裝 Google Cloud SDK 之後,您可以執行 gcloud app services set-traffic 指令,將 100% 的流量遷移至單一版本。例如:

  • 立即遷移流量:
    gcloud app services set-traffic [MY_SERVICE] --splits [MY_VERSION]=1
  • 如要逐步遷移流量,請加入選用的 --migrate 標記:
    gcloud app services set-traffic [MY_SERVICE] --splits [MY_VERSION]=1 --migrate

API

如要透過程式遷移流量,您可以使用 Admin API,詳情請參閱遷移及拆分流量

本頁內容對您是否有任何幫助?請提供意見:

傳送您對下列選項的寶貴意見...

這個網頁
App Engine standard environment for Node.js docs