27

ESB を既存の Java/Maven Web ベースの製品に統合することを考えています。具体的には、ServiceMix と Mule に注目しています。この製品は、電子メール、Quartz、HTTP、SMS、IM を介した RESTful Web サービスなど、いくつかの異なるサービスに接続します。ドキュメントをざっと見ただけですが、2 つのオプションはかなり重く、かなり複雑に思えます。ESB を使用する場合の教科書的な例のように思えますが、いずれかのシステムを学習するためだけに多くの時間を費やしたくはありません。

私が言ったように、私はすでに Maven によって構築された Web アプリを持っており、システムの 1 つを統合することは、電子メールを送信するような単純なものであってもかなり簡単であることを望んでいましたが、いずれかを追加すると、世界の半分を引き込むように見えますジャーの用語であり、既存の製品に組み込むのは難しいでしょう。

これらのオプションのいずれかを取り込もうとする価値はありますか? 完全に再構築せずに既存のアプリに統合する簡単な方法はありますか? 他の軽量オプションはありますか?それらを使用する価値があると考えるべき側面はありますか?

4

5 に答える 5

13

Mule は、サービスを XML と一緒にプラグインするという点で非常に使いやすく、非常に役立つビデオの例がたくさんあります。

ESB は将来のものであると考えられており、あなたが言うように、あなたの ESB はそれをどこで使用するかの教科書的な例のようです。

私はあなたのすべての質問に答えようとします:

これらのオプションのいずれかを取り込もうとする価値はありますか? これはあなたが自問する必要がある質問だと思います-あなたは何を達成しようとしていますか? 実装を簡単にしようとしている場合は、すべてのセットアップが含まれているため、純粋なコードまたは ESB を介して同じ時間がかかる可能性があります。学習演習として行うことを考えている場合は、価値があるかもしれません。

完全に再構築せずに既存のアプリに統合する簡単な方法はありますか? 短い答えいいえ。ほとんどのサードパーティのライブラリ/フレームワークと統合するには、再設計が必要になります。

他の軽量オプションはありますか? Mule は実にシンプルです。MQ を使用して、HTTP、SMS、および IM を実行できる場合があります。おそらく ActiveMQ または RabbitMQ。

それらを使用する価値があると考えるべき側面はありますか? はい。ESB は、新しいサービスが頻繁に追加され、構成が変更される可能性が高い企業向けに設計されています。すべてを XML にすることで、この変更が少し簡単になります。そのため、1 回限りのソフトウェアを構築するだけの場合、それは正しい方法ではない可能性があります。ただし、後でさらに追加し、さまざまなサービスを常に接続する場合は、これが最適なルートかもしれません.

于 2009-09-02T00:51:14.440 に答える
12

また、本格的なESBのペナルティなしで、言及したすべての統合ニーズに対して非常に強力なApacheCamelフレームワークを確認することもできます。

于 2009-11-10T12:46:07.600 に答える
4

Mule プロジェクトの創設者である Ross Mason は、このトピックについて非常に優れた記事を書きました。To ESB or Not to ESBです。見てみることをお勧めしました。また、 Mule iBeansをチェックしてみてください。Mule iBeansは、これを Web アプリケーションとして構築していて、軽量の統合を行いたいだけで、メディエーションに関心がない場合は、はるかに単純なモデルを提供します。

于 2009-11-07T05:27:45.127 に答える
1

相互に通信する必要があるアプリケーションまたはデータベースが 2 つ以上あり、それらが複数の通信プロトコルを使用している場合、投資する価値があると言えます。または、この状況が将来も当てはまると予想する場合。あなたの要件は確かにこれに合っているようです。

ESB または少なくともメッセージ バスの使用を示唆するもう 1 つの状況は、1 つまたは複数のアプリケーションが他のアプリケーションとは独立して進化することを期待または必要とする場合です。たとえば、1 つは活発に開発中であり、他はそうではありません。ESB は、安定したシステムをアクティブに開発されたシステムの変更から分離できるため、常にすべてを更新する必要がなくなります。

ESB の真の力は、アプリケーションが通信方法と通信相手に関するすべての決定を ESB に委任し、そのコンポーネントにそれらの側面の全責任を負わせることができることです。他のすべてのコンポーネントは互いに分離され、相互に心配する必要がなくなり、依存関係の組み合わせの問題が大幅に減少します。

学習曲線に関しては、Mule ESB を習得するのはかなり簡単であり、接続しようとしている複数のサービスと通信するために必要なすべての API を学習しようとすると、学習曲線がはるかに低くなることがわかりました。

于 2014-04-27T16:10:03.230 に答える
1

MULE で貴重な時間を無駄にしないことをお勧めします。これまでの私の経験は良くありません。重要なシステムには使用しません。成熟した製品とはほど遠いものです。それとは別に、RESTful サービスは確かに多くのシンプルさを約束し、実際のユース ケースがあります。

于 2013-06-27T16:38:27.463 に答える