接続タイムアウトの設定
Compute Cloud@Customerでは、TCP接続またはHTTPリクエストとレスポンスの各ペアの間に許容される最大アイドル時間を制御するロード・バランサ・リスナーを構成できます。
ロード・バランサは接続の多重化をサポートします。ロード・バランサは、複数のクライアントから宛先バックエンド・サーバーへの多数の受信リクエストを、少数(1つまたは複数)のバックエンド接続を介してルーティングできます。
ロード・バランサによってクライアントがバックエンド・サーバーに接続された後、アクティブでないために接続がクローズされることがあります。TCP接続またはHTTPリクエストとレスポンスの各ペアの間に許容される最大アイドル時間を制御するロード・バランサ・リスナーを構成できます。
次のタイムアウト設定は、ロード・バランサの動作に影響します:
-
ロード・バランサとクライアント間のキープ・アライブ設定
-
ロード・バランサとバックエンド・サーバー間のキープ・アライブ設定
-
アイドル・タイムアウト(秒)
キープ・アライブ設定
ロード・バランシング・サービスは、バックエンド・サーバーのキープ・アライブ設定に従いません。ロード・バランサは、アイドル状態が300秒を超えるバックエンド・サーバー接続をクローズします。バックエンド・サーバーがロード・バランサへの接続をクローズすることを許可しないことをお薦めします。502エラーの発生を回避するには、バックエンド・サーバーが310秒未満でアイドル接続をクローズしないようにします。
ロード・バランシング・サービスは、65秒間アイドル状態が続くまで、接続を維持するようにキープ・アライブ値を設定します。この設定の値は変更できません。
アイドル・タイムアウト設定
TCPまたはHTTPリスナーを作成または編集する場合、最大アイドル時間(秒)を指定できます。この設定は、HTTPリクエスト/レスポンス・フェーズで、2つの連続する受信または2つの連続する送信ネットワーク入出力操作の間に許可される時間に適用されます。送信または受信したパケットがない状態で、構成されたタイムアウトが経過すると、クライアントの接続はクローズされます。HTTPおよびWebSocket接続の場合、送信操作は受信操作のタイマーをリセットせず、受信操作は送信操作のタイマーをリセットしません。
このタイムアウト設定は、完了したレスポンスと後続のHTTPリクエストとの間のアイドル時間には適用されません。
デフォルトのタイムアウト値は、TCPリスナーでは300秒、HTTPリスナーでは60秒です。最大タイムアウト値は7200秒です。
クライアントまたはバックエンド・サーバーがデータの送信にさらに時間を必要とする場合は、タイムアウト・パラメータを変更します。次に例を示します:
-
クライアントはデータベース問合せをバックエンド・サーバーに送信し、データベースは実行に300秒以上かかります。そのため、バックエンド・サーバーは300秒以内にデータを送信しません。
-
クライアントは、HTTPプロトコルを使用してデータをアップロードします。アップロード中、バックエンドは60秒間データをクライアントに送信しません。
-
クライアントは、HTTPプロトコルを使用してデータをダウンロードします。最初のリクエストの後、60秒を超えるバックエンド・サーバーへのデータの送信は停止されます。
-
クライアントは、WebSocket接続の確立後にデータの送信を開始しますが、バックエンド・サーバーは60秒を超えてデータを送信しません。
-
バックエンド・サーバーは、WebSocket接続の確立後にデータの送信を開始しますが、クライアントは60秒を超えてデータを送信しません。