Cloud Tasks キューの移行を管理する

将来、キューの管理方法が変化すると、既存のキューを変更する必要が生じる可能性あります。

概要

Cloud Tasks API は、元々 App Engine 用に開発されたタスクキュー サービスの App Engine から独立したインターフェースを提供します。まず、プロジェクトで動作している App Engine アプリケーションをキューで動作させるためには、Cloud Tasks キューまたは App Engine タスクキューのすべてのユーザーが有効にされる必要があります。そうすると、App Engine アプリケーションを無効にすることにより、キューを実際に無効化または一時停止できます。

ただし、Cloud Tasks を使用して管理されるキューには、App Engine アプリケーションで実行されていないハンドラを対象とする別の機能があります。プロジェクトでこのようなキューのみが実行されている場合、有効な App Engine アプリケーションを実行するための要件は必要以上に複雑になっていました。アプリケーションの動作を変える必要がありました。

2020 年末までは、Cloud Tasks キューや Task Queues のキューを作成するためプロジェクト内に App Engine アプリケーションが必要ですが、タスクハンドラの実行に必要なければアプリケーション自体は無効の状態にできます。無効になった App Engine アプリケーションに、料金は発生しません。

スケジュール

新機能は、次の順にリリースされる予定です。

  1. 2020 年 11 月 30 日以降、App Engine アプリケーションが無効になっているプロジェクトの Task Queue のキューや Cloud Tasks のキューはすべて一時停止されます。これは、新機能が導入されたとき、キューが誤って再開されるのを防ぐためです。

  2. 12 月の初めから 2020 年末まで、新機能が順次リリースされます。このリリースでは、関連する App Engine アプリケーションのステータスに関係なく、すべてのキューが再開されます。

  3. 1 回限りのキューの一時停止操作、または手動による一時停止で、以前からキューが一時停止状態になっている場合、そのキューは一時停止のまま残ります。

  4. 一時停止されていないキューは、すべて実行されます。

お客様の手順

この変更への対応として行う必要があることは、プロジェクトのステータスによって異なります。

App Engine アプリケーションが現在無効の場合

Task Queues または Cloud Tasks のいずれかで作成したキューがある場合、App Engine アプリケーションを無効にすると、すべてのキューは上記の 1 回限りのキューの一時停止操作により一時停止されます。

キューが一時停止した後に App Engine アプリケーションを有効にした場合、キューは自動的に再開されませんCloud Consolegcloud コマンド、またはクライアント ライブラリを使用して、手動で再開する必要があります。

App Engine アプリケーションが現在有効の場合

この場合のアクションは、アプリケーションを有効にしておくか、無効にするかによって変わります。

アプリケーションを有効のままにしておく場合は、何もする必要はありません。

アプリケーションを無効にする場合は、アプリケーションを無効にする前に、キューを一時停止または削除します。これにより、アプリケーションを無効にしても、新しい動作の結果としてのキューの自動実行ができなくなります。

キューを一時停止または削除する方法は次のとおりです。

  • queue.yaml / queue.xml ファイルからキューを削除することにより、Task Queues メソッドを使用します。

または