2009-07-24 11 views
2

私はなぜ私のWebアプリケーション(私はそれを書きませんでしたが、私はそれをデバッグするはずです)を突き止めて、Tomcat Webサーバーを再起動させています。Tomcatサーバーが再起動し、org.apache.catalina.core.AprLifecycleListenerとは何ですか?

Jul 24, 2009 7:52:15 AM org.apache.catalina.core.AprLifecycleListener lifecycleEvent 
INFO: The Apache Portable Runtime which allows optimal performance in production environments was not found on the java.library.path: /usr/local/jdk1.5.0_09/jre/lib/i386/server:/usr/local/jdk1.5.0_09/jre/lib/i386:/usr/local/jdk1.5.0_09/jre/../lib/i386 
Jul 24, 2009 7:52:15 AM org.apache.coyote.http11.Http11BaseProtocol init 

が、私は実際のファイルの他のグループにこれと同じ処理を行うことができますし、それが正常に動作しますが、この一つの特定のグループをやってすることは、サーバーが再起動する原因:私は、サーバーを再起動する前に、ログに表示すべてがあります。私はそれがちょうどタイムアウトかどうか、誰かが私になぜそれが死んでいるのかを伝える他のログファイルがあるべきかどうかを教えてくれることを望んでいます。タイムアウトであれば、それを増やす方法があれば。

更新:私の代わりにcatalina.outのうちstanadardに出力を置き、そして私が代わりに上記の取得すべては私のアプリからの進歩であるとし、「殺した」bin/catalina.sh runを使用してサーバを起動しようとしました。

私はそれを再起動しているかどうかわかりませんが、bin/catalina.sh runでサーバを再起動しようとすると、BindExceptionが発生するので、何かが再起動しました。

更新2:Tomcat 5.5とJava 5を使用していました。Tomcat 6をインストールしてJava 6を使用するように設定しましたが、同じことが起こっています。また、私が "echo $?" "殺された"の後、それは私に "137"を与えます、それはおそらくホスティング会社が何らかの理由でそれを殺していることを示します。

+0

これはSFに属していませんか? – Draemon

+2

私のアプリでそれを殺してしまったら、プログラミング上の問題です。 –

+1

ちなみに、答えは「私のホスティング会社はプログラミング上の問題ではなくジャーク」であるため、これを閉じるために投票してください。私は "あまりにもローカライズ"に投票しました。 –

答えて

3

心配しないでください - それはあまりにも多くのCPU時間を取っていたので、ホスティング会社が私のプロセスを殺していたことが判明しました。今では、CPUの90%を10分以上使用せずに、このような時間をかけてこのような処理をする方法を見つけなければなりません。Tomcatを "仕上げ"しようとしましたが、それは役に立たなかったので、 1000)」を処理ループなどで使用します。

0

webappをアンデプロイし、Tomcatがそれなしで起動するかどうかを確認します。私は悪いTomcatのインストールを疑う。

+0

この1つの特定のファイルセットでこの1つの特定のことを試していない限り、Tomcatが起動しています。私が他のファイルで同じことをしようとすると、うまくいく。私は本当に誰かが私のアプリで何が問題なのかを理解する方法を教えてくれることを願っています。 –

+0

Tomcatを停止させることが想像できる唯一のことは、System.exit()です。 System.exit()でメソッドブレークポイントを設定してみてください。これには、デバッガでTomcatに接続する必要があります。 –

+0

このアプリケーションの完全なソースはありますか? –

1

私は、サーバーが最初に起動されたときにそのAPRメッセージが表示されると信じています。

Tomcatにデプロイされたアプリケーションでは、サーバー全体を停止してやり直すことはできません。これは意味がありません。 webappを再ロードする(web.xmlを変更する、Tomcat ManagerからReloadを実行するなど)ためには、いくつかのことを行うことができますが、デプロイされたアプリケーションはサーバー全体を停止/開始できません。

外部停止してサーバーを起動する何かがないと確信していますか?どこかのシェルスクリプトやcronジョブ?

+0

いいえ、それは私がアプリでこの1つのことをやり直し、私がそれをやり直していない場合は再起動しないことに関してかなり一貫しています。 –

+0

そのことは...? –

3

私はこれが不機嫌だと知っていますが、あなたのアプリが何とかSystem.exit()を呼び出す可能性がありますか?

+2

私はこれを複数回見ました。 – phatmanace

+0

終了の呼び出しがありますが、スタンドアロンのテストmain()にあり、LOG.errorの前にあります.System.exitによってLOG.errorが書き込まれる前に終了する可能性があります。バッファをフラッシュしますか? –

4

AprLifecycleListenerの責任は http://tomcat.apache.org/tomcat-6.0-doc/apr.html

はあなたがシャットダウンのログエントリを投稿(あなたがいずれかを持っているか、またはあなたが見るすべての上にある?)でした参照、Apacheのポータブルランタイムを初期化するのですか?

ところで、標準のシェルスクリプトはtomcatを1回だけ起動し、tomcatが終了すると終了します。サーバーを再起動する可能性のある種類のラッパーソフトウェア(http://wrapper.tanukisoftware.org/など)がありますか?

+0

ラッパーはありません。bin/startup.shで起動します。そのAprLifecycleListenerエントリの前にログには何もありません。 –

+0

startup.shは、JVMが終了するとtomcatを再起動しません。完全に再起動してもよろしいですか? – WMR

+0

いいえ、私が知っていることは、私がやっていることが止まることです。そしてcatalina.outファイルには、そのAprLifecycleListenerメッセージで始まる一連の起動メッセージが表示されます。 –

関連する問題