1

Linux サーバーで JBoss AS 7 の奇妙な動作に遭遇しました。アプリケーションで war を展開すると、サーバーはこのアプリケーションの有効な HTTP 要求に応答しません。有効な URL を取得しようとすると、バックエンド関数 (DAO メソッドなど) が呼び出されたことをログで確認できます。デバッグ ログには、JSF の後続のタグがレンダリングされていることが示され、メッセージも表示されますRendering View index.xmlが、応答は到達しません。クライアント。存在しない URL を使用すると (例index.asd) 応答が 404 になり、間違ったページ名を使用すると (例inswxasd.xhtml) 応答が 500 になります。したがって、有効な要求でのみ失敗します。

リモート (firefox を使用) とローカル (を使用) の両方で接続を試みたところwget、問題が再現されました。奇妙なことは、私がすでに使用した戦争を展開してから、それが機能したことです。

編集1:

にリクエストを送信すると、サーバー プロセスが 200% の CPU を使用していることに気付きました。さらに、スタックを持つ 1 つのアプリケーション (Hibernate、Spring、JSF 2.0、Primefaces) でのみ発生します。

編集2:

これは、jstack 出力( jstack -l -F <PID>) を使用した貼り付けです。すべてのスレッドがブロックされています。

さらに、( topJBoss プロセスのスタックを使用してダンプすると) 問題はおそらくhttp--0.0.0.0-8080-1. 何か案は?

4

1 に答える 1

0

手伝ってくれてありがとう。データベースを以前の状態に戻したところ、機能し始めました。どうやら、この無限ループの原因となったデータに問題があったようです。今、それを見つける必要がありますが、再現可能であるため、なんとかします。

于 2012-04-10T07:19:41.450 に答える