Python での push キューの使用

このページでは、push キューの概要について説明します。push キューは、HTTP リクエストを App Engine ワーカー サービスに送信して、タスクを実行します。リクエストは一定の速度で送信されます。タスクが失敗した場合、サービスが別のリクエストを送信してタスクを再試行します。使用するすべての種類のタスクに対してハンドラを提供する必要があります。さまざまな種類のタスクに対応する複数のハンドラを 1 つのサービスに用意することも、異なるサービスを使用して異なるタスクの種類を管理することもできます。

図

タスクの期限

ワーカー サービスは、push タスク リクエストを受け取ると、ワーカー サービスのスケーリング タイプに応じた期限までにそのリクエストを処理し、HTTP レスポンスを送信する必要があります。

自動スケーリング サービスは、10 分以内に完了する必要があります。手動および基本スケーリング サービスは最大で 24 時間実行できます。

200~299 の HTTP レスポンス コードはタスクが成功したことを示し、他のすべての値はタスクが失敗したことを示します。期限までにタスクがレスポンスを返せなかった場合、または無効なレスポンスの値を返した場合、タスクは再試行されます。

失敗したタスクを再試行する

push タスク リクエスト ハンドラが 200~299 以外の HTTP ステータス コードを返した場合、またはタスクの期限までにレスポンスを返すことができなかった場合、キューは成功するまでタスクを再試行します。アプリケーションが大量のリクエストで飽和状態になるのを避けるために、徐々にバックオフされ、失敗したタスクの再試行を少なくとも 1 時間に 1 回繰り返すスケジュールに設定されます。

push キューを使用する

push キューを使用するには、少なくとも以下の作業が必要です。

  • プログラムでタスクを作成し、そのタスクをデフォルトの push キューまたは作成された 1 つ以上の名前付き push キューに追加します。
  • タスクのリクエストを処理するハンドラを作成し、そのハンドラを App Engine サービスに割り当てます。

必要に応じて、以下の作業を行います。

push キューを使用すると、アプリケーションに追加の割り当てが適用されます。

次のステップ

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

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

Python の App Engine スタンダード環境