2009-06-10 11 views
2

私は現在、かなり大きなJava 6アプリケーションに取り組んでおり、私たちの機能のいくつかをサービス指向アーキテクチャに分割しようとしています。Javaアプリケーションに最も適したSOAアーキテクチャはどれですか?

アプリケーション・スペースの主なSOAフレームワークはOSGiで、私はFelixとKnopplerfishを探していましたが、これが私の唯一の選択肢ではないことを確認したいと考えました。

私たちがWebアプリケーションを構築していないのに、SOAPのようなアプリケーションに実際のWebサービスプロトコルを使用するのは意味がありますか?これも受け入れられますか?

あなたのデスクトップアプリケーションでOSGi(Felixなど)の実装を使用したことがありますか?もしそうなら、どうしたの?あなたは何か良いことを知っていますか?

私たちはすべてここでSOAに慣れているので、どんな助けでも大いに感謝します。

+0

何か不人気な質問:P SOAはあまりセクシーではないと思います。答えるために皆さんに+1してください! –

答えて

1

OSGi(Equinox)ベースのアプリケーションプラットフォームとしてEclipse RCPを使用しています。私たちのアプリケーションは、Eclipseプラグインと純粋なOSGiバンドルの両方を使用します。このケースでは、Java EEサーバーへのリモート(Spring Remoting経由)だけでなく、アプリケーションに対してローカルなサービスも提供しています。

あなたのケースでは、OSGiはあなたのアプリには意味をなさないかもしれませんが、リモートサービスプロトコルでは意味がないかもしれません。

また、デスクトップアプリケーション自体はSOAとはみなされません。アプリケーションを単にコンポーネント化しているだけなので、それは良いことです。

2

私の会社では、OSGiを広く使用しています。さまざまなコンポーネントをバージョンアップし、各コンポーネントから公開されるものをより詳細に制御できるという点で、私たちはうまく機能します。

異なるコンポーネントを別々のハードウェア上で実行したいと考えている場合は、Webサービス(REST/SOAP/etc)を使用した記述が意味があります。ただし、あるプロセスまたはネットワークから別のプロセスまたはネットワークにビットを送信し、そのデータをシリアル化/マーシャリングして送信できるようにすることと、反対側で行うことの両方にパフォーマンスの低下があります。それが起こると思わない場合は、Webサービスを使用しないでください。

+0

あなたはOSGi実装をお使いですか? –

関連する問題