2

Web アプリケーションがトリガーされるたびに tomcat コンテナーに自動デプロイする bash スクリプトを作成しました。それはかなり簡単です:

  1. バックアップのために現在のデータベースをダンプします
  2. 現在の tomcat プロセスをシャットダウンします
  3. Web アプリケーション フォルダーを削除します。
  4. warファイルを新しいものに置き換えます
  5. tomcat を再起動します。

ただし、今はフォールバックが必要です。起動プロセスに問題がある場合は、データベースが復元され、古い war ファイルが再度デプロイされます。

私の問題は、いつ Web アプリケーションの起動に失敗したかがわからないことです。私の実装の 1 つは、Web アプリケーションのログ ファイルのサイズを確認することです。しばらくしても増加しない場合 (つまり、何も書き込まれないことを意味します)、システムはデプロイが失敗したことを認識し、古い W​​eb アプリケーションを復元します。ただし、これはちょっと汚いので、ログファイルがその時点で正しくロールされたらどうなるかわかりません。

Tomcat には、Web アプリケーションの起動失敗の検出をサポートするメカニズムがありますか?

4

1 に答える 1

1

Tomcat に同梱されているManagerを見たことがありますか? 内部にデプロイされた Web アプリのステータスを簡単に判断するための API を提供します。

于 2013-05-04T09:56:51.443 に答える