現在確認中なので、真偽のほどは少し怪しいですが。
tomcatのversionは5.5.28。起動自体は問題ないけど、停止の処理がおかしい。停止のコマンド打っても、3分ほどプロセスが残ったままだ。8080ポートはlistenしてるけど、アクセスしても応答は返ってこない状態
jsvcを使う方法と、catalina.shを叩く2通りの方法で試したが、両方ともダメだった。
jsvc
jsvcで起動後、停止させてみた(確認のためdebugオプションをつけて)。jsvc stopの処理の部分は具体的にはこんな感じで(jsvc-src/native/tomcat5.shのsampleと同じ)
jsvc \ -debug \ -stop \ -pidfile=/var/run/tomcat.pid \ org.apache.catalina.startup.Bootstrap
すると、pidが表示されてそのうち失敗する。
17/10/2009 15:49:31 20481 jsvc debug: get_pidf: 3 in /var/run/tomcat5.pid 17/10/2009 15:49:31 20481 jsvc debug: get_pidf: pid 20425 17/10/2009 15:49:37 20481 jsvc debug: get_pidf: 3 in /var/run/tomcat5.pid 17/10/2009 15:49:37 20481 jsvc debug: get_pidf: pid 20425 (中略)
この後、3分ほど経過するとプロセスは落ちる。そのときにcatalina.outに致命的なエラーが出てたけど、なんだったか忘れた。
CATALINA_HOME/bin/shutdonw.shを実行
startup.sh(catalina.sh start)で起動。その後、shutdown.sh(catalina.sh stop)叩く。
# /usr/local/tomcat/bin/shutdown.sh Stopping the tomcat service. Using CATALINA_BASE: /usr/local/tomcat Using CATALINA_HOME: /usr/local/tomcat Using CATALINA_TMPDIR: /usr/local/tomcat/temp Using JRE_HOME: /usr/java/default Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar
と、いつものように環境変数だけ出して処理はバックグラウンドへ。この後、psで見ててもtomcatのプロセスは残ったまま。port 8080はlistenしているけど応答は返ってこない。で、jsvcと同様に3分ほど経過するとプロセスは落ちる。んー気になるー。