Hitachi

Cosminexus V11 アプリケーションサーバ 機能解説 保守/移行編


9.14 スレッド数の上限値設定機能

アプリケーションで使用するスレッド数が多くなると,Cヒープで使用するメモリ使用量が増加します。メモリ使用量の増加に伴いCヒープ不足が発生した場合,JavaVMの強制終了,J2EEサーバの異常終了などのトラブルが発生して,システムが全面停止してしまうおそれがあります。

このような問題の発生を防止するために,使用できるスレッド数に上限値を設定できます。あらかじめ使用するスレッド数の上限を把握し,その数を基にCヒープに割り当てるメモリサイズを決定することで,Cヒープ不足の発生を防止します。なお,設定した上限値を超えたスレッドが生成された場合は,例外がスローされます。アプリケーションでこの例外をキャッチして,適切な対処をすることで,システムの停止を抑止できます。

スレッド数の上限は,-XX:HitachiThreadLimitオプションで指定します。-XX:HitachiThreadLimitオプションの詳細は,マニュアル「アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「-XX:HitachiThreadLimit(スレッド数の上限値指定オプション)」を参照してください。