9.4. リスナー
アプリケーションと環境に応じて、特定ポートのトラフィックなどの一部のタイプのトラフィックに固有する複数のリスナーを設定し、各リスナーにオプションを設定することができます。
以下は、HTTP、HTTPS、および AJP リスナー上に設定できるパフォーマンス関連のオプションになります。
max-connections
リスナーが処理可能な最大同時接続数。デフォルトではこの属性は未定義で、接続数の制限はありません。
このオプションを使用すると、リスナーが処理できる接続数の上限を設定できます。これは、リソースの使用度を制限するのに役立つことがあります。この値を設定するには、ワークロードとトラフィックタイプを考慮する必要があります。これは、リソースの使用度を制限するのに役立つことがあります。以下の
no-request-timeout
も参照してください。no-request-timeout
接続が閉じられるまでに接続がアイドル状態でいられる期間 (ミリ秒単位)。デフォルトの値は 60000 ミリ秒 (1 分) です。
接続の効率を最適化するためにご使用の環境でこのオプションを調整すると、ネットワークパフォーマンスの向上に役立ちます。アイドル接続が途中で閉じられた場合、接続を再確立するオーバーヘッドが発生します。アイドル接続の開かれている期間が長すぎると、リソースが不必要に使用されます。
max-header-size
バイト単位の HTTP リクエストヘッダーの最大サイズ。デフォルトは 1048576 (1024KB) です。
ヘッダーサイズを制限すると、一部の DOS 攻撃の防止に役立ちます。
buffer-pool
リスナーに使用する
io
サブシステムのバッファープールを指定します。デフォルトでは、すべてのリスナーがdefault
バッファーリスナーを使用します。このオプションを使用して各リスナーが一意のバッファープールを使用するよう設定したり、複数のリスナーが同じバッファープールを使用するよう設定できます。
worker
undertow
サブシステムはio
サブシステムに依存して XNIO ワーカーを提供します。このオプションはリスナーが使用する XNIO ワーカーを指定します。デフォルトでは、リスナーはdefault
ワーカーをio
サブシステムで使用します。異なるワーカーリソースを特定のネットワークトラフィックに割り当てできるようにするため、特定のワーカーを使用するよう各リスナーを設定すると便利であることがあります。
リスナーオプションの設定
管理コンソールまたは管理 CLI を使用してリスナーオプションを設定できます。
管理コンソールを使用して設定する場合:
- Configuration → Subsystems → Web (Undertow) → Server と選択します。
- 設定するサーバーを選択し、表示 をクリックします。
- 左側のメニューで、Listener を選択し (HTTP Listener など)、表でリスナーを選択します。
- Edit をクリックして設定するオプションを変更し、Save をクリックします。
管理 CLI を使用して設定する場合は、以下のコマンドを使用します。
/subsystem=undertow/server=SERVER_NAME/LISTENER_TYPE=LISTENER_NAME:write-attribute(name=OPTION_NAME,value=OPTION_VALUE)
default-server
Undertow サーバーのdefault
HTTP リスナーに対し、max-connections
を100000
に設定するには、以下のコマンドを使用します。/subsystem=undertow/server=default-server/http-listener=default:write-attribute(name=max-connections,value=100000)