次は、パフォーマンスに影響する主要なHTTPリスナー・パラメータです。
リスナー・アドレス
リスナー・アドレスは、IPアドレスとポート番号で構成されます。Oracle Traffic Directorインスタンスが実行中のホストは、複数のネットワーク・インタフェースと複数のIPアドレスを持つことができます。
ホスト・マシンのすべてのネットワーク・インタフェース上のクライアント・リクエストをリスニングするように構成されているリスナーのIPアドレスは0.0.0.0
となります。リスナーのIPアドレスとして0.0.0.0
を指定すると便利ですが、結果として各接続に対して1つのシステム・コールが追加で必要になります。パフォーマンスの向上のためには、リスナーに実際のIPアドレスを指定することを検討してください。
アクセプタ・スレッド数
アクセプタ・スレッドは、クライアント・リクエストを受信して、接続キューに入れます。Oracle Traffic Directorインスタンスが起動されると、指定された数のアクセプタ・スレッドが各リスナーに作成されます。リスナーのアクセプタ・スレッド数が指定されていない場合、Oracle Traffic Directorではホスト上のCPUごとに1つのアクセプタ・スレッドが作成されます。
アクセプタ・スレッドの数が少なすぎると、受け入れられないクライアント・リクエストが発生する可能性がありますが、アイドル状態のアクセプタ・スレッドが多すぎても、不要な負荷がシステムにかかります。デフォルトである、1CPU当たり1つのアクセプタ・スレッドという設定は、ほとんどの状況で許容できるトレードオフです。
比較的大量の接続をオープンおよびクローズする必要のある、HTTP 1.0のワークロードでは、デフォルトのアクセプタ・スレッド数である、1リスナー当たり1スレッドが準最適な設定です。アクセプタ・スレッド数を増やすことを検討してください。
リスニング・キュー・サイズ
前述したように、アクセプタ・スレッドは、クライアント・リクエストを受信して、接続キューに入れます。オペレーティング・システムでアクセプタ・スレッドがスケジュールされていない場合、オペレーティング・システムのカーネルが、Oracle Traffic Directorプロセスにかわり、TCP接続を維持します。カーネルは、リスニング・キュー・サイズによって指定されている制限まで接続を受け入れることができます。
HTTP 1.0スタイルのワークロードには、確立および終了した多くの接続が含まれる場合があります。このため、Oracle Traffic Directorインスタンスに大きな負荷がかかり、クライアントで接続タイムアウトが発生する場合は、リスニング・キュー・サイズをより大きい値に設定して、HTTPリスナー・バックログ・キューのサイズを増やすことができます。
プレーンテキストperfdump
レポートには、次の例に示すように、構成内の各HTTPリスナーに対するIPアドレスおよびアクセプタ・スレッドの数が示されます。
ListenSocket ls1: ------------------------ Address https://0.0.0.0:1904 Acceptor Threads 1 Default Virtual Server net-soa
10.3項「リスナーの変更」の説明に従い、管理コンソールまたはCLIを使用して、HTTPリスナーの設定を変更できます。