2

5 つの個別の Javaプロセスがあります。ビジネス ロジック モジュールとして実行されます。子プロセスを開始/ping/監視/メッセージできるプロセス管理アプリケーションを開発したいと考えています。

また、追加のオーバーヘッドが必要になるため、rest-ws または最悪の場合の rmi 呼び出しを介して子プロセスとキャッシュなどのリソースを共有する可能性があります。

私は、プロセス内で実行されているビジネス ロジックに関する情報を送信し続ける Web サービス ベースの API に傾倒していました。プロセスには、データ チャーニング、計算、通知プロセス エンジンがあります。

何か案は?

4

1 に答える 1

1

1 つのオプションは、JMX を使用して、1 つ以上の MBean を公開することです。Oracle にはドキュメントがあります。プロセスからの要求情報を使用したり、シグナルを送信して動作を変更したりできます。

あなたがすることの基本的な概要は、子プロセスのそれぞれでリモートで公開する必要があるメソッドを決定することです。それらのそれぞれは、それらのメソッドとのインターフェースを定義し、次にそのインターフェースの実装を定義する必要があります。次に、これらの実装を に登録する必要がありますMBeanServer

このアプローチの利点は、プロセスに対して JConsole を開いて MBean を使用できるため、必要最小限の「管理アプリケーション」をすぐに取得できることです。その後、データをよりきれいに表示する別のアプリケーションを作成したい場合は、子プロセスを変更せずに自由に作成できます。

このアプローチでは、とにかく「キャッシュを共有する」ことにはなりませんが、プロセス (またはマシン) 間でキャッシュを共有することは、実際には別の問題になるはずです (私は思います)。

于 2013-01-31T21:36:56.903 に答える