コンピューターにTomcatをダウンロードしました(サービスとしてインストールされていません)。Tomcatサーバーで実行されているWebアプリをアップグレードするスクリプトを書いています。スクリプトは大まかに次のように機能します。
- Tomcatを停止します
- いくつかのアップグレード操作を実行します
- Tomcatを起動します
アップグレード操作を実行するとき、Tomcatが完全に停止していることを知る必要があります。ただし、$TOMCAT_HOME/bin/catalina.sh stop
実行すると、Tomcatが実際に停止する前にそのスクリプトが終了し、Tomcatの実行中にアップグレード操作を実行すると、クラッシュが発生する可能性があります。さらに、アップグレード操作がすぐに終了する可能性があります。これにより、シャットダウンが完了する前にTomcatの起動が実行され、Tomcatがクラッシュする可能性があります。
今のところ私の解決策は、シャットダウンが開始されてから5秒間待つことですが、この問題に対してより洗練された解決策があるかどうか疑問に思っています。