この章では、ネットワークキャッシュとアクセラレータ (NCA) のチューニング可能パラメータの一部を説明します。
チューニング可能パラメータ |
参照先 |
---|---|
Solaris カーネルのチューニング可能パラメータ | |
NFS チューニング可能パラメータ | |
インターネットプロトコル群のチューニング可能パラメータ |
これらのパラメータの設定は、Web サーバー専用のシステムに適しています。これらのパラメータの設定によりキャッシュページに割り当てるメモリーを増やすことができます。この章で説明するチューニングパラメータはすべて、 /etc/system ファイル内で設定します。
/etc/system ファイルにチューニング可能パラメータを追加する方法については、「Solaris カーネルのチューニング」を参照してください。
383 ハッシュテーブルエントリ
0 から 201,326,557
いいえ
NCA の TCP ハッシュテーブルサイズが小さすぎて、着信 TCP 接続を追跡できない場合。この場合、多くの TCP 接続が同じハッシュテーブルエントリとしてグループ化されます。このような状況は、NCA が多くの TCP 接続を受けて、システム性能が低下しているときに発生します。
変更の可能性あり
256 接続
0 から 4,294,967,295
いいえ
過剰な数の TCP 接続が確立しているために、NCA が新たに確立した接続を直後に閉じる場合。NCA が多くの TCP 接続を受けていて、これ以上の負荷を処理することはできても、これ以上の接続を受け付けることができない場合は、このパラメータの値を大きくします。その結果、NCA は、同時により多くの TCP 接続を処理できるようになります。
変更の可能性あり
NCA が待機する保留中でまだ確立されていない (3 種類のハンドシェークが未完了) TCP 接続の最大数を指定します。
1024 接続
0 から 4,294,967,295
いいえ
すでに多数の TCP 接続が保留となっているため、NCA が追加の接続を拒否する場合。NCA が多くの TCP 接続を受けていて、これ以上の負荷を処理することはできても、これ以上の接続を受け付けることができない場合は、このパラメータの値を大きくします。その結果、NCA は、同時により多くの TCP 接続を処理できるようになります。
変更の可能性あり
NCA がページをキャッシュするために使用できる最大物理メモリー容量 (ページ数) を指定します。この値は、合計メモリー容量の 75 パーセント以下に収める必要があります。
物理メモリーの 25 パーセント
物理メモリーの 1 パーセントから最大量まで
いいえ
メモリー容量が 512M バイト以上システム上の NCA を使用する場合。システムの未使用物理メモリー容量が多い場合は、このパラメータの値を大きくします。これにより、NCA は、このメモリーを使って新しいオブジェクトを効果的にキャッシュに格納できます。その結果、システム性能が向上します。
仮想メモリーより物理メモリーが大きいシステム (4G バイトを超えるメモリーを持つ 32 ビットカーネル) の場合を除き、このパラメータの値は nca_vpmax に併せて大きくします。システムのページサイズを判定するには、pagesize(1) を使用します。
変更の可能性あり
NCA がページをキャッシュするために使用できる最大仮想メモリー容量 (ページ数) を指定します。この値は、合計メモリー容量の 75 パーセント以下に収める必要があります。
仮想メモリーの 25 パーセント
仮想メモリーの 1 パーセントから最大量まで
いいえ
メモリー容量が 512M バイト以上システム上の NCA を使用する場合。システムの未使用仮想メモリー容量が多い場合は、このパラメータの値を大きくします。これにより、NCA は、このメモリーを使って新しいオブジェクトを効果的にキャッシュに格納できます。その結果、システム性能が向上します。
このパラメータの値は nca_ppmax に合わせて大きくします。仮想メモリーよりも物理メモリーが大きなシステムの場合を除き、このパラメータは nca_vpmax とほぼ同じ値に設定します。
変更の可能性あり
NCA パラメータの設定以外にも、一般的なシステムのチューニングにより、NCA の性能を向上させることができます。GigabitEthernet (ge ドライバ) を使用する場合は、インタフェースを割り込みモードにすると性能が向上します。
たとえば、64 ビットカーネルでブートする 4G バイトのメモリーのあるシステムの場合、/etc/system ファイル内に次のパラメータを設定するとよいでしょう。システムのページサイズを判定するには、 pagesize を使用します。
set sq_max_size=0 set ge:ge_intr_mode=1 set nca:nca_conn_hash_size=82500 set nca:nca_conn_req_max_q=100000 set nca:nca_conn_req_max_q0=100000 set nca:nca_ppmax=393216 set nca:nca_vpmax=393216 |
宛先 STREAMS キューが QFULL メッセージを生成する前に、syncq の深度 (メッセージ数) を設定します。
10000 メッセージ
0 (無制限) から MAXINT
いいえ
メモリーの大きなシステム上で NCA を動作させている場合、このパラメータの値を増やしてドライバがキューに入れることのできるパケット数を増やします。サーバーの負荷が大きい場合、このパラメータの値を増やして、パケットがドロップされたりパケット処理が後回しにされることなくモジュールやドライバのデータ処理能力を向上させることができます。
Solaris 8 以降のリリース – 実稼動システムではこのパラメータを 0 に設定しないでください。このパラメータの変更が必要な場合は、この値を徐々に増やしてシステムを監視します。
Solaris 7 以前のリリース – 実稼動システムではこのパラメータを 0 に設定しないでください。このパラメータの変更が必要な場合は、この値を最大 100 まで徐々に増やしてシステムを監視します。
変更の可能性あり
「sq_max_size (Solaris 9 12/02 リリース)」を参照してください。