9

SOA の概念は簡単に理解できますが、BPEL や Apache Camel などのエンタープライズ サービス統合アーキテクチャやテクノロジについては、まったく詳しくありません。

BPEL がサービスのオーケストレーションに役立ち、Camel がエンタープライズ統合パターンの実装であることを知っています。私は現在、有名なエンタープライズ統合パターンの本を読んでいます。

しかし、EIP とオーケストレーションの境界は、私には非常に薄いように思えます。私の考えでは、Camel も独自の方法でサービスを調整します。さらに、Camel は多くのコネクタを提供するため、さまざまなプロトコルを簡単に使用できます。

Camel は BPEL より優れていますか?
または、Camel ではできないことを BPEL で行うことは可能ですか?
どれ?
私が読んだことについて、キャメルは BPEL よりも REST サービスをオーケストレーションするのに優れているようです: それは本当ですか?

4

2 に答える 2

7

私たちは以前の仕事で何度もこの質問に答えようとしてきました。当社の製品は、TIBCO BusinessWorks(Apache Camelなど)とTIBCO iProcess(Apache ServiceMixなど)でした。

そして、私たちは簡単な結論に達しました:

  • プロセスが長期的である場合(通常、一時停止し、マネージャーから承認されるまで待つ必要があります)、BPELが必要です。
  • プロセスがより短期的で、人が関与していない場合は、統合が必要です(Camel)。

これは常に適用できるわけではなく、これら2つの世界には強い境界がありませんが、それを単純化することができます。そしてもう1つ注意してください。統合製品を使用してBPELのようなプロセスを実行でき、その逆も可能です。それはアプローチの問題です。しかし、これらのルールに固執すれば、2つを区別できるはずです。他にもたくさんの側面がありますが、これが最も重要な側面だと思います。

于 2013-03-05T15:01:47.543 に答える
6

Bpel は、bpm およびサービス オーケストレーションの実装のための言語/標準です。camel は統合エンジンの実装であるため、リンゴとナシに少し似ています。高レベルのビジネスの自動化 (複数のシステム、長時間実行されるプロセス、およびビジネス ロジックを使用した購入フローの実装など) については、bpel (または bpmn) を検討することをお勧めします。Camel では、通常、ルーティングやワイヤ プロトコルの変換など、より技術的な側面を処理します。通常、かなりステートレスな方法で。

もちろん、その中間に何かがあります。たとえば、同種のプロトコル間のルーティングなど、どのソリューションでも実行できます。あなたの残りの例など。また、Camel は activti や apache ode などのオーケストレーション エンジンと一緒に実行できることにも注意してください。

于 2012-04-26T22:16:11.850 に答える