Message Processor への接続を再試行するように Router を構成する

Edge for Private Cloud v4.16.09

Router は 5 秒ごとに Message Processor をヘルスチェックし、Message Processor がリクエストを処理できるかどうかを確認します。Message Processor がダウンすると、Router はリクエストを別の Message Processor に自動的に転送します。

Router で conf_load_balancing_load.balancing.driver.nginx.server.retry プロパティを設定することで、Message Processor がダウンした場合の Router の動作を構成できます。このプロパティは、スペース区切りの値を使用して以下を指定できます。

  • off: 再試行を無効にします。リクエストが発生すると、Router はエラーコードを返します。
  • http_599: (デフォルト)Router が Message Processor から HTTP 599 レスポンスを受信すると、Router はリクエストを次の Message Processor に転送します。

    HTTP 599 は、Message Processor のシャットダウン時に生成される特別なレスポンス コードです。Message Processor は、既存のリクエストをすべて完了しようと試みますが、新しいリクエストの場合は、HTTP 599 で応答し、次の Message Processor でリクエストを再試行するように Router に通知します。
  • error: Message Processor との接続を確立、エラーが発生した場合、またはレスポンス ヘッダーを読み取っているときにエラーが発生した場合、Router は次のリクエスト プロセッサにリクエストを転送します。
  • タイムアウト: Message Processor との接続を確立している間、タイムアウトしている場合、またはリクエスト ヘッダーからレスポンス ヘッダーを読み取っている間にタイムアウトが発生した場合、Router はリクエストを次の Message Processor に転送します。
  • invalid_header: Message Processor が空または無効なレスポンスを返した場合、Router は次にその Message Processor にリクエストを転送します。
  • http_XXX: Message Processor が HTTP コード XXX を含むレスポンスを返した場合、Router はそのリクエストを次の Message Processor に転送します。

Router を構成するには:

  1. /<inst_root>/apigee/customer/application/router.properties ファイルを編集します(ファイルが存在しない場合は作成します)。
  2. 次のように conf_load_balancing_load.balancing.driver.nginx.server.retry プロパティを追加します。
    conf_load_balancing_load.balancing.driver.nginx.server.retry=http_599 error
  3. Router を再起動します。
    > /<inst_root>/apigee/apigee-service/bin/apigee-service edge-router restart