0

Windowsでperlスクリプトから実行されるJavaアプリケーションがあります。perlスクリプトは別のアプリケーションから呼び出され、XMLメッセージが与えられ、XML応答を期待します。高レベルのアーキテクチャ(ナプキンスタイル)は次のとおりです。

---------------           ---------------              ------------
- Windows App - XML -->   - perl script - STDOUT -->   - Java App -
--------------- XML <--   --------------- STDIN  <--   ------------

私はperlスクリプトとJavaアプリケーションを制御できます。XMLコマンドの処理とXML応答の構築の間、Javaアプリケーションを実行し続けたいと思います。procrunを使用して、ソケットを介したプロセス間通信を設定することを検討しています。これに入る前に、TomcatのようなWebサーバーで実行するようにJavaアプリケーションを変更するのは、この状況ではやり過ぎか、適切かどうか疑問に思っていました。

4

1 に答える 1

4

あなたがそうする必要がないので(または少なくともあなたはJavaアプリがそのようなタイプのサーバーで実行されるべきである理由を述べていないので)やり過ぎに聞こえます。

とにかく、それは技術的に可能であるはずであり、高性能、分散アーキテクチャが必要な場合、または他のアプリ間でJavaアプリを共有したい場合(Webサービスであるかのように)、いくつかの利点があります。

また、Javaアプリが複数のスレッドで実行されることも考慮に入れる必要があります。そのため、共有データ(シングルトンや静的変数など)は、再入可能になるように調整する必要があります。アプリの作成方法によっては、これには手間がかからず、かなりの時間がかかる場合があります。

于 2012-12-20T15:11:21.717 に答える