J2EEアプリケーションのパフォーマンスが低下しています。私たちはその状況でThead Dumpsをとり、次のスレッドが複数のダンプでRunnableであり、他のスレッドが(直接的または間接的に)ロックを待っているいくつかのモニターをロックしていることがわかりました。ハングしたスレッドjava.lang.ClassLoader.findBootstrapClass
at java.lang.ClassLoader.findBootstrapClass(Native Method)
at java.lang.ClassLoader.findBootstrapClass0(ClassLoader.java:891)
at java.lang.ClassLoader.loadClass(ClassLoader.java:301)
- locked [0x9747c360] (a sun.misc.Launcher$ExtClassLoader)
at java.lang.ClassLoader.loadClass(ClassLoader.java:299)
- locked [0x9747c318] (a sun.misc.Launcher$AppClassLoader)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:268)
- locked [0x9747c318] (a sun.misc.Launcher$AppClassLoader)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
.....
このスレッドは動いておらず、他のスレッドを動作させることができますか?
あなたが使用するjavaとアプリケーションサーバーのバージョンを教えてくれれば助かります。他のスレッドは、通常のクラスローダーロックを待っていますが、ネイティブメソッドで特定のスレッドがどのようにブロックされると、ハードウェア/ディスクの問題やjarファイルの破損の可能性があります。デバッグでアプリケーションサーバーを起動し、プロセスを一時停止して、どのクラスが原因であるかを確認することができます。 – bestsss
@bestsss Java:1.5。 AppServer:WAS 7.0 –
スローダウンはいつ発生しますか?起動直後またはシステムがしばらくまたは無作為に実行された直後ですか? WAS自身と親密ではありませんが、デバッグ関連のすべてのパラメータがオフで、デプロイ後にアプリを変更するものは何もないことを確認したいと思います。 websphereがアプリケーションを何度も再読み込みできるようです。 – CurtainDog