- - PR -
Javaアプリ監視プログラム
1
| 投稿者 | 投稿内容 | ||||
|---|---|---|---|---|---|
|
投稿日時: 2003-06-21 11:27
例えば、以下の要件は実現可能でしょうか?
・既にJavaのコンソールアプリ(App1)があります。 ・何かしらの監視プログラム(App2)を作成して、App1の起動終了を管理したい。 例えば、ログにある出力がなされた時にApp1を再起動する。 ・App1には一切手を加えない。 即ち、Javaサーブレット(上の例では、App1)に対するサーブレットコンテナ(App2)のようなものを考えています。 (ただし、スレッドである必要はなくプロセスで管理できれば十分。) 監視の部分についてはどうにでもなると思うのですが、(App1に手を加えることなく)App1の起動・終了を行えるのかどうかというのがよく分かりません。 また、そういうことをした場合にApp1の動作が単独で動作させた場合とまったく同じであることが保証できるのかどうかよく分かりません。 どうでしょうか? 以下、環境を追記 OS:Windows2000 Server JDK:1.3.1 [ メッセージ編集済み 編集者: ふうた 編集日時 2003-06-21 18:19 ] | ||||
|
投稿日時: 2003-06-21 23:53
java.lang.Runtime,java.lang.Processあたりを使ってApp2から すべてのApp1の起動・終了を管理したらできないでしょうか? App1のつくりによってしまうとは思いますけれど。 | ||||
|
投稿日時: 2003-06-23 14:35
試しにテストプログラムを作ってみました。
App2 は、別スレッドを起動してそこでApp1を起動する。 App2の元のスレッドで、イベント(とりあえずキー入力)を監視して App1の起動・終了をおこなう。 【起動】 Process ps = Runtime.getRuntime().exec( "java App1" ) 【終了】 ps.destroy() といった感じです。 とりあえず、それなりには動いているように見えます。 (これによって何か弊害があるのかどうかまでは見えていません。) | ||||
1
