トラフィックの移行

トラフィックの移行を行うと、アプリケーションのサービス内のバージョン間でのリクエストのルーティングが切り替わり、1 つ以上のバージョンから単一の新しいバージョンにトラフィックが移行されます。

アプリの複数のバージョン間でトラフィックを分割する方法については、トラフィック分割をご覧ください。

始める前に

バージョンに対してトラフィックを構成する前に、必要な権限がユーザー アカウントに含まれていることを確認してください。

トラフィックを徐々に移行する

スタンダード環境では、リクエストをターゲット バージョンにすぐにルーティングするのか、段階的にルーティングするのかを選択できます。

デフォルトでは、ウォームアップ リクエストは無効です。トラフィックは新しいバージョンにすぐに移行されます。

トラフィックを段階的に新しいバージョンに移行する場合は、ウォームアップ リクエストを有効にすることもできます。インスタンスを実行していない状態で直ちにトラフィックを新しいバージョンに移行すると、リクエストを読み込む際のレイテンシが急増します。既存のバージョンと同じ名前の新しいバージョンをデプロイすると、トラフィックはすぐに移行されます。同時に、古いバージョンのすべてのインスタンスがシャットダウンされます。そのため、新しいバージョンに対するリクエストの読み込みによってレイテンシが急増します。

ウォームアップ リクエストを有効にした場合、異なる環境に存在するバージョン間でトラフィックを移行するには、トラフィックの即時移行を指定する必要があります。

アプリケーションにウォームアップ リクエストを追加する

ウォームアップ リクエストを有効にすると、トラフィックは段階的に移行されます。最初にウォームアップ リクエストが新しいインスタンスに送信され、その後、インスタンスがユーザー リクエストを受信します。ウォームアップ リクエストを使用すると、これらのリクエストが現在トラフィックを受信しているバージョンで処理され、新しいインスタンスの作成中に新しいバージョンにトラフィックが移行されるので、ユーザーのレスポンス時間が改善されます。

ウォームアップ リクエストが有効でない場合、新しいインスタンスが作成される前にユーザー リクエストが送信されます。新しいインスタンスが作成され、アプリケーション コードが読み込まれるまでに遅延が生じるため、ユーザー レスポンスでレイテンシが発生します。

レイテンシを回避し、ウォームアップ リクエストを有効にするには、構成ファイルに inbound_services 要素を追加してから、App Engine にアプリケーションをデプロイします。

たとえば、アプリケーションを App Engine にデプロイする前に app.yaml ファイルに次の要素を追加します。

inbound_services:
- warmup

ウォームアップ リクエストを有効にする方法については、ウォームアップ リクエストを構成してパフォーマンスを改善するをご覧ください。

新しいバージョンへのトラフィックの移行

Console

GCP Console でトラフィックを移行するには、[バージョン] ページに移動します。

[バージョン] ページに移動

  1. すべてのトラフィックの移行先となるバージョンを選択します。
  2. [トラフィックを移行] をクリックします。
  3. 省略可: ウォームアップ リクエストを有効にすると、トラフィックは段階的に移行されます。トラフィックをすぐに移行するには、[詳細設定を表示] でオプションを選択します。

gcloud

Google Cloud SDK をインストールした後、gcloud app services set-traffic コマンドを実行して、すべてのトラフィックを 1 つのバージョンに移行します。次に例を示します。

  • トラフィックを直ちに移行するには、次のコマンドを実行します。
    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 を使用できます。詳細については、トラフィックの移行と分割をご覧ください。

このページは役立ちましたか?評価をお願いいたします。

フィードバックを送信...

Node.js 用 App Engine スタンダード環境に関するドキュメント