Webコンテナのリクエスト処理スレッド数を上回る大量のリクエストを受け付けた場合に、本現象が発生する可能性があります。Webコンテナのリクエスト処理スレッドが不足している場合は、ログに次のようなメッセージが出力されます。
「すべてのスレッド (<スレッド数>) が現在稼働中で待機しています。max-processors (<スレッド数>) を増やすか、そ
のサーブレットのステータスをチェックしてください [<リスナ種別>-0.0.0.0-<ポート番号>-<スレッド識別子>]」
アプリケーションの遅延が発生していないか確認してください。
遅延の発生有無の確認には以下の方法等があります。
・Webサーバのアクセスログに出力されている実行時間を確認
・利用者へのヒアリング
・(V9以降が対象)スローダウン障害対策機能が出力したスローダウン障害ログが出力されていないか確認
但しデフォルトでは40秒を超える遅延でなければスローダウン障害ログは出力されません。
スローダウン障害とする時間の変更方法は以下のとおりです。
otxadmin> set server.diagnostic-service.faultResponseTime=<スローダウン障害とする時間(秒)>
・事象再現時のスレッドダンプを採取
□アプリケーションの遅延が発生している場合
原因を突き止めて遅延を解消してください。
遅延の原因調査には、スレッドダンプの採取やV9以降であればスローダウン障害対策機能が自動出力したスレッドダンプが有効です。
スレッドダンプの採取方法はマニュアルの以下を参照してください。
V6
[運用編 > WebOTX 運用編 - 分冊 > 障害解析 > 3.10. JavaVMのスレッドダンプ取得]
V7
[運用編 > 5.障害解析 > トラブルシューティング(概要) > 3.4. JavaVMのスレッドダンプ取得]
V8~V9
[トラブルシューティングガイド > 1. 障害時の操作 > 1.1. 情報採取 > 1.1.3. Java VMのスレッドダンプ取得]
V10
[トラブルシューティング > 対処方法と情報採取 > 1. 情報採取 > 1.3. Java VMのスレッドダンプ取得]
□アプリケーションの遅延が発生していない場合
次の手順でリクエスト処理スレッド数を増やしてください。
リクエスト処理スレッド数の変更方法は以下のとおりです。
1) 運用管理コマンド(otxadminコマンド)を起動します。
2) 次のコマンドを実行し、リクエスト処理スレッド数の上限と、リクエスト処理スレッド数が上限に近づいたことを警告する閾値の値を変更します。
※リクエスト処理スレッド数が上限に近づいたことを警告する閾値は警告を出す以外動作に影響ありません。必要に応じて変更してください。
[V6~V8の場合]
otxadmin> set --user admin --password <管理者パスワード> --host <ドメインのホスト名> --port <ドメイン管理用ポート番号> server.http-service.http-listener.<httpリスナー名>.max-processors=<最大数>
otxadmin> set --user admin --password <管理者パスワード> --host <ドメインのホスト名> --port <ドメイン管理用ポート番号> server.http-service.http-listener.<httpリスナー名>.limit-processors=<警告閾値>
※<httpリスナー名>は、使用しているWebサーバにより異なります。Javaベースの内蔵Webサーバの場合は、"http-listener-1"や"http-listener-2"。WebOTX Webサーバ(Apache)やIISの場合は、"ajp-listener-1"を指定してください。
[V9~V10の場合]
otxadmin> set --user admin --password <管理者パスワード> --host <ドメインのホスト名> --port <ドメイン管理用ポート番号> server.thread-pools.thread-pool.<スレッドプールID>.max-thread-pool-size=<最大数>
otxadmin> set --user admin --password <管理者パスワード> --host <ドメインのホスト名> --port <ドメイン管理用ポート番号> server.thread-pools.thread-pool.<スレッドプールID>.limit-thread-pool-size=<警告しきい値>
※スレッドプールIDは既定値で「http-thread-pool」になります。
3) WebOTXサービスを再起動します
【対象製品】Application Server
【確認済みのバージョン】V6~V10
【確認済みのエディション】すべて
【確認済みの対象OS】すべて
【確認済みのJavaバージョン】すべて
【コンポーネント】Webコンテナ
【カテゴリー】トラブルシューティング