機械翻訳について

エンドポイント・リクエストのポーリングの有効化

ビジネス・オブジェクトの処理時にタイムアウトの問題が発生した場合、長時間実行エンドポイント・リクエストのポーリングを有効にする場合があります。

ポーリングは、実行時間が長いプロセスに関係する多くのコンテキストで有用であり、ゲートウェイまたはブラウザのタイムアウトが原因でクライアント/サーバー接続を中断するリスクがあります。 たとえば、アプリケーションが外部サービスと統合されている場合、外部サービスに対するAPIコールを実行するトリガーを介して、プロセスが長時間実行されることがあります。 また、アプリケーションのライフサイクル中に、ファイルから、またはあるデータベース(開発、ステージングまたはライブ)から別のデータベースに大量のデータをインポートするエンドポイント・リクエストを含めることもできます。 ビジネス・オブジェクト・データの作成、問合せ、更新および削除など、データ関連エンドポイント・リクエストのほとんどは、ポーリングによるメリットが得られる長時間実行プロセスです。

ポーリングを有効にするには、エンドポイント・リクエストURLにvb-poll=true問合せパラメータを追加します。 クライアントによってエンドポイント・リクエストが行われると、リクエストが完了するのを待機せずに、HTTPレスポンス(ステータス200またはそれ以外)を返すのではなく、クライアントがポーリングする新しいURLの詳細を含むHTTPレスポンス(ステータス202)を返します。 これにより、サーバーはバックグラウンドでリクエストの処理を続行し、クライアントが新しいURLをポーリングできます。また、リクエストが完了してレスポンス(またはエラー)を取得するかどうかを確認する場合も同様です。

長時間実行エンドポイント・リクエストのポーリングを有効にするには:

  1. vb-poll=true問合せパラメータをエンドポイント・リクエストURLに追加します。たとえば:

    POST https://server.example.com/ic/builder/rt/hrapp/1.0/resources/data/Employee?vb-poll=true

  2. ステータス202のHTTPレスポンスを受信する場合、値がポーリングURLになるPolling-Locationヘッダーを探します。

    クライアントは、このURLをポーリングしてレスポンスをチェックできます。このレスポンスには、プロセスがまだ実行中であることを示すPolling-Locationヘッダーが含まれているか、最後のレスポンスになります。

    長時間実行プロセスが完了すると、レスポンスは制限された期間使用可能のままになり、その後削除されます。 プロセス自体は、この影響を受けませんが、デフォルトでは、この期間2分を超えて結果を使用することはできません。 クライアントは、ポーリング・リクエストの頻度を決定するときに、この設定を考慮する必要があります。