Tomcat サーバーがいつクラッシュするかを知りたいです。メモリがいっぱいになったり、Web アプリケーションで例外が発生したりするとクラッシュする可能性があることはわかっていますが、他に考えられる理由は何ですか?
私は Web アプリケーションを開発していますが、アプリケーションがメモリをいっぱいにしないことを確信しています。アプリケーションにも例外はありません (catalina.out ファイルに例外はありません)。サーバーは停止します。
ちなみに、Tomcat の状態をチェックし、必要に応じて再起動する "recover-tomcat.sh" シェル ファイルがあります。次のようになります。
#!/bin/bash
SERVICE=/etc/init.d/tomcat7
STOPPED_MESSAGE=" * Tomcat servlet container is not running."
PID_FILE_MESSAGE=" * Tomcat servlet engine is not running, but pid file exists."
if [ "`$SERVICE status`" == "$STOPPED_MESSAGE" ];
then
{
print "tomcat not running"
$SERVICE start
}
else
if [ "`$SERVICE status`" == "$PID_FILE_MESSAGE" ];
then
{
$SERVICE restart
}
fi
fi
もう 1 つの関連する質問は、メッセージを受け取る理由は何ですか?
* Tomcat servlet engine is not running, but pid file exists.
リカバリ ファイルは cron によって 5 分ごとに呼び出されます。私の crontab ファイルは次のようになります。
SHELL=/bin/bash
# monitor tomcat every 5 minutes
*/5 * * * * sudo /bin/recover-tomcat.sh