6

さまざまな外部プラットフォームからのさまざまなサービスを統合する必要がある新しいプラットフォームの計画を始めています。基本的に、私は多数の内部の自家製サービスと、サードパーティからライセンス供与されているいくつかの外部サービスを結び付けています。

一般的に、外部サービスはすべてWebサービスですが、REST、SOAP、およびXML-RPCのミッシュマッシュです。一部の内部サービスにはRESTAPIがありますが、XMPP、Hessian、カスタムソケットプロトコル、Java RPC、uWSGIなど、それほど簡単ではないものがたくさんあります。

私の調査によると、ApacheServiceMixのようなESBが私のニーズにぴったりのようです。しかし、それは本当に複雑に見えます。私はロケットを打ち上げていませんが、トランザクションメッセージングが必要です(主にeコマースやエンタイトルメント用)。ServiceMixが内部で使用するメッセージキュー(ActiveMQ)だけで十分かもしれないと思います。

ServiceMixがActiveMQを超えて提供するものを誰かが説明できますか?たくさんあることは知っていますが、私のようなESB n00bは、流行語に夢中になっているときに具体的な違いを実際に把握するのは困難です。

ありがとう!

4

1 に答える 1

8

ServiceMixはOSGiベースのコンテナーであり、制御されたランタイム環境でアプリケーションをデプロイおよび実行できます(J2EEコンテナーのようですが、重量が軽く、J2EEコントラクトなどにプログラミングする必要はありません)。OSGiのおかげで、アプリケーションをパーツに分割し、これらのパーツを互いに独立して更新/進化させることができます。アプリケーション全体を停止することなく、アプリケーションの一部をアップグレードできます。OSGiには、スタンドアロンのJavaプロセスよりもはるかに優れたライフサイクル管理があります。

時間の経過とともに進化するアプリケーションを作成することを考えている場合は、OSGiを検討する必要があります。また、ServiceMixは、アプリケーションをデプロイするためのランタイムOSGiコンテナーを提供します。Manningの「OSGiinAction」という本を強くお勧めします。

さまざまなトランスポートプロトコルを使用する可能性のあるさまざまな外部サービスを結び付けるには、Apache Camelをお勧めします。これは、ServiceMixにも適切にデプロイされます。

ところで、既存のアプリケーションは、(コードを変更することなく)ほとんど労力をかけずにOSGiコンテナーにデプロイできます。

Torsten Mielke FuseSource Web:www.fusesource.comブログ:http ://tmielke.blogspot.com

于 2011-03-31T10:49:10.847 に答える