Oracle® Fusion Middleware Oracle WebLogic Server パフォーマンス チューニング ガイド 11g リリース 1 (10.3.1) B55570-01 |
|
戻る |
次へ |
オペレーティング システムのチューニングは、使用しているオペレーティング システムのマニュアルに従って行ってください。Windows プラットフォームの場合、通常はデフォルト設定を変更する必要はありません。一方、Solaris および Linux プラットフォームでは、通常は適切なチューニングを行う必要があります。以下の節では、オペレーティング システムのパフォーマンスに関する考慮事項について説明します。
OS を適切にチューニングすると、エラー状態の発生が回避され、システム パフォーマンスが向上します。オペレーティング システムのエラー状態は、パフォーマンスを常に低下させます。通常、ほとんどのエラー状態は、TCP チューニング パラメータに関係し、オペレーティング システムが close_wait
呼び出しから古いソケットを解放できなかった場合に発生します。一般的なエラーとしては、サーバサイドでの「connection refused
」、「too many open files
」や、クライアントサイドでの「address in use: connect
」があります。
ほとんどの場合、これらのエラーは、TCP の wait_time
値および TCP のキュー サイズを調整することによって回避できます。トンネリングを使用する際に調整が必要な場合がよくありますが、あまりにも大きな負荷がかかっている場合は、どのプロトコルに対しても OS のチューニングが必要な場合があります。以下の節では、さまざまなオペレーティング システムのチューニング パラメータに関する情報を示します。
注意 : 以下の節では、Oracle がアプリケーションのパフォーマンスを向上できると判断したチューニング パラメータについて説明しますが、ローカルの環境でチューニング パラメータを変更する場合には、パラメータ値のチューニングやパフォーマンスの変化のモニタリングについて、ご使用の OS ベンダのチューニングに関するドキュメントに従うことをお勧めします。また、「All SPEC jAppServer2004 Results Published by SPEC」Web ページ (http://www.spec.org/jAppServer2004/results/jAppServer2004.html ) では、チューニングに関する有意な情報が提供されています。報告された WebLogic Server のベンチマークごとに、使用された OS のチューニング パラメータが紹介されています。 |
以下の節では、Solaris オペレーティング システムのチューニングに関する情報を示します。
注意 : 以下の節では、パフォーマンスを向上できる一般的なパラメータをリストします。これらのリストには、すべてのパラメータが含まれているわけではなく、別の Solaris オペレーティング システムではパラメータやそのデフォルト値が異なったり、無効である場合があります。詳細については、「その他の Solaris チューニング情報」を参照してください。 |
この節では、チューニングすると、アプリケーションのパフォーマンスを向上できる TCP の重要なチューニング パラメータをリストします。
/dev/tcp tcp_time_wait_interval
/dev/tcp tcp_conn_req_max_q
/dev/tcp tcp_conn_req_max_q0
/dev/tcp tcp_ip_abort_interval
/dev/tcp tcp_keepalive_interval
/dev/tcp tcp_rexmit_interval_initial
/dev/tcp tcp_rexmit_interval_max
/dev/tcp tcp_rexmit_interval_min
/dev/tcp tcp_smallest_anon_port
/dev/tcp tcp_xmit_hiwat
/dev/tcp tcp_recv_hiwat
/dev/ce instance
/dev/ce rx_intr_time
注意 : 使用できる TCP パラメータをすべて表示するには、netstat -s -P tcp コマンドを使用します。 |
次の例に従い、ndd
コマンドを使用して以下の TCP 関連のチューニング パラメータを設定します。
ndd -set /dev/tcp tcp_conn_req_max_q 16384
この節では、チューニングするとアプリケーションのパフォーマンスを向上させることができる /etc/system
ファイルの重要なチューニング パラメータをリストします。サーバへの各ソケット接続ではファイル記述子を消費します。ソケットのパフォーマンスを最適化するには、オペレーティング システムをコンフィグレーションして適切な数のファイル記述子を用意しておく必要があります。したがって、/etc/system
ファイル内のハッシュ テーブルのサイズやその他のチューニング パラメータに加え、ファイル記述子の上限のデフォルト値を変更する必要があります。
注意 : /etc/system パラメータを変更したら、マシンを再起動する必要があります。 |
set rlim_fd_cur
set rlim_fd_max
set tcp:tcp_conn_hash_size
(Solaris 8 および 9)
set ip:ipcl_conn_hash_size
(Solaris 10)
set shmsys:shminfo_shmmax
(注意 : 最低でも 4GB 以上の RAM を搭載したマシンにのみ設定すること。)
set autoup
set tune_t_fsflushr
この節では、チューニングすると、アプリケーションのパフォーマンスを向上できる CE Gigabit ネットワーク カードの重要なチューニング パラメータをリストします。
set ce:ce_bcopy_thresh
set ce:ce_dvma_thresh
set ce:ce_taskq_disable
set ce:ce_ring_size
set ce:ce_comp_ring_size
set ce:ce_tx_ring_size
Solaris のチューニング オプションの詳細については、以下を参照してください。
『Solaris Tunable Parameters Reference Manual』(Solaris 8) (http://docs.sun.com/app/docs/doc/806-6779
)
『Solaris Tunable Parameters Reference Manual』(Solaris 9) (http://docs.sun.com/app/docs/doc/806-7009
)
『Solaris Tunable Parameters Reference Manual』(Solaris 10) (http://docs.sun.com/app/docs/doc/817-0404
)
この節では、チューニングすると、アプリケーションのパフォーマンスを向上できる Linux のチューニング パラメータをリストします。
/sbin/ifconfig lo mtu
kernel.msgmni
kernel.sem
fs.file-max
kernel.shmmax
net.ipv4.tcp_max_syn_backlog
Linux のチューニングの詳細については、Linux ベンダのマニュアルを参照してください。また、http://ipsysctl-tutorial.frozentux.net/ipsysctl-tutorial.html
にある「Ipsysctl Tutorial 1.0.4」(Linux で提供される IP オプションについての説明) も参照してください。
この節では、チューニングすると、アプリケーションのパフォーマンスを向上できる HP-UX オペレーティング システムの重要なチューニング パラメータをリストします。
tcp_conn_req_max
tcp_xmit_hiwater_def
tcp_ip_abort_interval
tcp_rexmit_interval_initial
tcp_keepalive_interval
HP-UX のチューニング情報については、「Tunable Kernel Parameters」リファレンス ドキュメント (http://docs.hp.com/hpux/onlinedocs/TKP-90203/TKP-90203.html
) を参照してください。
Windows プラットフォームの場合、通常はデフォルト設定を変更する必要はありません。ただし、あまりにも負荷が大きい場合、MaxUserPort
および TcpTimedWaitDelay
を調整すべき場合があります。これらのパラメータでは、アプリケーションによって要求されるユーザ ポートの可用性を指定します。
デフォルトでは、MaxUserPort
パラメータを使って、短命な (存続期間の短い) ポートに、1024 ~ 5000 の値が割り当てられます。アプリケーションが TCP 接続を閉じた後で、OS がポートを再び要求するまで待機する時間を制御する TcpTimedWaitDelay
パラメータのデフォルト値は 4 分です。負荷が高い間に、これらの制限が超えられる場合があり、その場合は address in use: connect
例外が発生します。address in use: connect
例外が発生する場合は、HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
キーの MaxUserPort
および TcpTimedWaitDelay
レジストリの値を設定してみてください。
MaxUserPort = dword:00004e20 (10 進数では 20,000) TcpTimedWaitDelay = dword:0000001e (10 進数では 30)
例外が存続する場合、MaxUserPort
パラメータの値を大きくしてください。
Windows 2000 のチューニング オプションの詳細については、以下を参照してください。
「Microsoft Windows 2000 TCP/IP Implementation Details white paper」(http://www.microsoft.com/windows2000/techinfo/howitworks/communications/networkbasics/tcpip_implement.asp
)
「Windows 2000 Performance Tuning white paper」(http://www.microsoft.com/technet/prodtechnol/windows2000serv/maintain/optimize/perftune.mspx
)
Windows、HP-UX、および AIX のチューニング オプションの詳細については、以下の Web サイトを参照してください。
Windows のチューニング情報については、「Microsoft Windows 2000 TCP/IP Implementation Details white paper」(http://www.microsoft.com/windows2000/techinfo/howitworks/communications/networkbasics/tcpip_implement.asp
) を参照してください。
AIX のチューニング情報については、「AIX 5L Version 5.2 Performance Management Guide」(http://publib16.boulder.ibm.com/pseries/en_US/aixbman/prftungd/prftungd.htm
) を参照してください。
ユーザ プロセス用に使用できる最大メモリ - ユーザ プロセス用に使用できる最大メモリについては、オペレーティング システムのマニュアルを確認してください。オペレーティング システムによっては、この値が 128MB しかないものもあります。オペレーティング システムのマニュアルも参照してください。メモリ管理の詳細については、「Java 仮想マシン (JVM) のチューニング」を参照してください。