システムにさまざまな Tomcat のインスタンスがあります。別のシステムは、すべての tomcat インスタンスで同じタスク (webapp をオフライン/オンラインに設定するタスク) を起動し、タスクの結果を通知する必要があります。それを行う最善の方法は何ですか?
質問する
58 次
1 に答える
0
クラスター化された各サーバーに Tomcat マネージャー アプリケーションをデプロイし、それを使用してそれらを制御できます。マネージャーは、サーバー インスタンスを制御するための単純な Web ベースの API を提供します。制御サーバーから HTTP 呼び出しを発行して、制御サーバーでタスクを実行します。HTTP 呼び出しからの応答データは、タスクが成功したかどうかを示します。
以下は、Apache の HTTP コンポーネント ライブラリを使用して、制御サーバーから呼び出しを行う例です。
HttpGet get = new HttpGet("http://www.example.com:8080/manager/stop?path=/myapp");
HttpClient client = new DefaultHttpClient();
HttpResponse response = client.execute(get);
System.out.println(response.getStatusLine());
Tomcat マネージャーを使用する場合は、常にユーザー名/パスワードで保護し、SSL で保護する必要があることに注意してください。
于 2012-04-11T22:45:11.950 に答える