ロード・バランサのタイムアウト接続設定

ロード・バランサのタイムアウト設定を構成する方法について説明します。

Oracle Cloud Infrastructureロード・バランサは接続の多重化をサポートします。ロード・バランサは、複数のクライアントから宛先バックエンド・サーバーへの多数の受信リクエストを、少数(1つまたは複数)のバックエンド接続を経由してルーティングできます。

ロード・バランサによってクライアントがバックエンド・サーバーに接続された後、アクティブでないために接続がクローズされることがあります。また、TCP接続またはHTTPリクエストとレスポンスの各ペアの間に許容される最大アイドル時間を制御するロード・バランサ・リスナーを構成できます。バックエンド・サーバーがロード・バランサへの接続をクローズできないようにすることをお薦めします。

次のタイムアウト設定は、ロード・バランサの動作に影響します:

  • ロード・バランサとクライアント間のキープ・アライブ設定

    ロード・バランサ・サービスは、10,000トランザクションの接続を保持するか、65秒間アイドル状態が継続するように(いずれか早い方の制限による)キープ・アライブ値を設定します。

    ノート

    この設定の値は変更できません。

  • ロード・バランサとバックエンド・サーバー間のキープ・アライブ設定

    ロード・バランサは、アイドル状態が300秒を超えるバックエンド・サーバー接続をクローズします。詳細は、キープ・アライブ設定を参照してください。

  • アイドル・タイムアウト(秒)

    Load Balancerリスナーの作成の説明に従って、リスナーの作成時にアイドル・タイムアウトの期間を設定できます。この設定は、HTTPリクエスト/レスポンス・フェーズで、2つの連続する受信または2つの連続する送信ネットワーク入出力操作の間に許可される時間に適用されます。詳細は、アイドル・タイムアウト設定を参照してください。

キープ・アライブ設定

ロード・バランサ・サービスは、バックエンド・サーバーのキープ・アライブ設定に従いません。ロード・バランサは、アイドル状態が300秒を超えるバックエンド・サーバー接続をクローズします。バックエンド・サーバーがロード・バランサへの接続をクローズできないようにすることをお薦めします。502エラーの発生を回避するには、バックエンド・サーバーが310秒未満でアイドル接続をクローズしないようにします。

ロード・バランサ・サービスは、10,000トランザクションの接続を保持するか、65秒間アイドル状態が継続するように(いずれか早い方の制限による)キープ・アライブ値を設定します。

アイドル・タイムアウト設定

TCPまたはHTTPリスナーを作成または編集する際、「アイドル・タイムアウト(秒)」オプションを使用して、最大アイドル時間(秒)を指定できます。この設定は、HTTPリクエスト/レスポンス・フェーズで、2つの連続する受信または2つの連続する送信ネットワーク入出力操作の間に許可される時間に適用されます。送信または受信したパケットがない状態で、構成されたタイムアウトが経過すると、クライアントの接続はクローズされます。HTTPおよびWebSocket接続の場合、送信操作では受信操作のタイマーはリセットされず、受信操作では送信操作のタイマーはリセットされません。このオプションの適用方法の詳細は、Load Balancerリスナーの作成を参照してください。

ノート

このタイムアウト設定は、完了したレスポンスと後続のHTTPリクエストとの間のアイドル時間には適用されません。

デフォルトのタイムアウト値は次のとおりです:

  • TCPリスナーでは300秒。

  • HTTPリスナーでは60秒。

クライアントまたはバックエンド・サーバーがデータの送信にさらに時間を必要とする場合は、タイムアウト・パラメータを変更します。いくつかの例を示します:

  • クライアントはデータベース問合せをバックエンド・サーバーに送信し、データベースは実行に300秒以上かかります。そのため、バックエンド・サーバーは300秒以内にデータを送信しません。

  • クライアントは、HTTPプロトコルを使用してデータをアップロードします。アップロード中、バックエンドは60秒を超えてデータをクライアントに送信しません。

  • クライアントは、HTTPプロトコルを使用してデータをダウンロードします。最初のリクエストの後、60秒を超えるバックエンド・サーバーへのデータの送信は停止されます。

  • クライアントは、WebSocket接続の確立後にデータの送信を開始しますが、バックエンド・サーバーは60秒を超えてデータを送信しません。

  • バックエンド・サーバーは、WebSocket接続の確立後にデータの送信を開始しますが、クライアントは60秒を超えてデータを送信しません。

最大タイムアウト値は7200秒です。テナンシのこの制限を増やす場合は、サービス・リクエストを作成してサービス・リクエストを提出してください。詳細は、サービス制限を参照してください。