ここでは,同時実行スレッド数の動的変更の概要について説明します。
アプリケーションサーバを使用して構築したシステムでは,Webアプリケーション単位の最大同時実行スレッド数,占有スレッド数,および実行待ちキューサイズを,サービスを停止しないで動的に変更できます。Webアプリケーション単位の最大同時実行スレッド数,占有スレッド数,および実行待ちキューサイズは,運用管理コマンド(mngsvrutil)を使用して変更します。
Webアプリケーション単位の最大同時実行スレッド数を変更すると,次のような局面に対応できます。
なお,ここで設定した項目は,サービスを停止すると無効になり,設定内容はJ2EEサーバに保存されません。また,この方法で動的に変更できるのは,Webアプリケーションについての情報だけです。Webコンテナについての設定を変更する場合は,J2EEサーバを再起動しないと有効になりません。
Webコンテナ単位の最大同時実行スレッド数を変更したい場合,また,Webアプリケーションの最大同時実行スレッド数を一時的ではなく恒常的に変更したい場合は,システムの構築時と同じ手順で設定してください。
ここでは,特定のWebアプリケーションに対して,スループットを向上し,エラーとなるリクエストを減らしたい場合の,設定変更例を紹介します。この例では,Webアプリケーションの,最大同時実行スレッド数,占有スレッド数,および実行待ちキューサイズを増やしています。なお,同時実行スレッド数の動的変更では,Webコンテナ単位の最大同時実行スレッド数およびURLグループ単位の最大同時実行スレッド数は変更できません。
表2-60 同時実行スレッド数の動的変更の例
パラメタ | 変更前の設定値 | 変更後の設定値 | |
---|---|---|---|
Webコンテナ単位の最大同時実行スレッド数 | 10 | - | |
Webアプリケーションの設定 | 最大同時実行スレッド数 | 7 | 8 |
占有スレッド数 | 4 | 5 | |
実行待ちキューサイズ | 8 | 10 |
(凡例) -:設定を変更できない
同時実行スレッド数の変更はすぐに反映されます。変更した直後に注意が必要な動作を次に示します。
URLグループ単位の同時実行スレッド数制御を設定しているWebアプリケーションの同時実行スレッド数を動的に変更した場合,URLグループ単位の同時実行スレッド数の設定に影響が出ることがあります。影響が出る変更を次に示します。