ServiceMixおよびFuse ESBシステムの概要

Apache Camelに基づいたESB(Enterprise Service Bus)システムの簡単な概要: Apache ServiceMixRed Hat JBoss Fuseを紹介します。 これらの2つのシステムは同じコンポーネント上に構築され、同様の機能を備えています。 さらに、ほとんどの場合、それらは交換可能です。 Apache ServiceMixはRed HatのオープンソースコミュニティであるRed Hat JBoss Fuseによって開発されています。 ほとんどの場合、これらは同じ人々です。









まず、ESBとは何か、このクラスのシステムが企業の情報インフラストラクチャで使用される理由を理解します。 現代の企業では、ERP、CRM、BPM、DWH、ECM、さらに3文字の略語など、さまざまなクラスのアプリケーションがますます使用されています。 これらのアプリケーションはすべて、統合のためにさまざまなプロトコルとさまざまなデータ形式を使用します。 これらすべてのシステムを相互に接続するために、ESBが使用されます。



そのため、ESBシステムは次の主な機能を実行します。





Apache ServiceMixRed Hat JBoss Fuseの両方のシステムは、次のコンポーネントに基づいています。



Apache CamelはEIP (Enterprise Integration Patterns)に基づいてESB機能を直接実装します。 Apache Camelには、統合タスク用の独自のDSLがあります。 それにはいくつかの実装があります:Spring DSL、Blueprint DSL、Java DSL、Groovy DSL、Scala DSL。 また、Apache Camelには、さまざまなプロトコルとデータ変換を介した接続を担当する100以上のコンポーネントが含まれています



Apache ActiveMQはメッセージキューシステムです。 さまざまなメッセージング機能が実装されています。送信者-受信者、パブリッシュ-サブスクライブ、同期要求-応答、持続メッセージ、分散XAを含むトランザクションサポートによるメッセージングトランザクション。



Apache CXFは、SOAPやRESTなどのWebサービスの機能を実装するライブラリです。



Apache Karafは、 OSGiに基づいてアプリケーションを起動するためのプラットフォームです。 OSGiを使用すると、システム全体を再起動したり、依存モジュールを停止したりすることなく、さまざまなモジュール(バンドル)をインストール、削除、および更新できます。 これは、コンポーネントの停止が直接的な経済的損失につながる可能性があるため、コンポーネントの停止が非常に望ましくない企業インフラストラクチャで特に重要です。 OSGiベースのシステムでは、すべてがバンドルです:ライブラリ、統合ルート、リソース接続。



Red Hat JBoss Fuseの代替起動オプションがあります。 Apache Karafの代わりに、 Red Hat JBoss EAPを使用できます。



両方のシステムは、マスター/スレーブモデルに従ってフェールオーバー構成をサポートします。



合理的な質問は、 Apache ServiceMixRed Hat JBoss Fuseが同じコンポーネントで構成され、同じ機能を実装し、同じ人々によって開発されている場合、なぜもっと支払うのですか? 上記のコンポーネントに加えて、 Red Hat JBoss Fuseには、管理者の作業を簡素化し、クラスターの管理を可能にするいくつかの追加コンポーネントが含まれています。



Hawtioは、 Apache CamelApache ActiveMQ 、Fuse Fabricなどの管理を含むさまざまなプラグインを接続できるグラフィカル管理コンソールです。Hawtioは Apache ServiceMixの一部でないにもかかわらず、 Apache ServiceMixのどのバージョンにもインストールできます。 2つのチーム。



Fuse Fabricは、 Fabric8ベースのクラスター管理システムです。 グループまたは個別にクラスターノード構成を管理できます。 構成のバージョン管理をサポートします。 Hawtioと同様に、 Fabric8Apache ServiceMixに簡単にインストールできます。 さらに、 Apache ServiceMixには、 Apache Karaf Cellarに基づいてクラスターを管理する代替方法があります。



Red Hat JBoss Fuseサブスクリプションを購入すると、 Red Hatからサポートを受け、 Red Hat JBoss Operation Networkモニタリングツールを使用できるようになります。 Apache ServiceMixの場合、 Red Hat JBoss Operation NetworkのオープンソースアナログであるRHQを使用できます。 または、 Apache Karaf Decanterを使用してApache ServiceMixを監視できます。



Apache ServiceMixには、自慢できるものもあります。 Apache ServiceMixの最新バージョンには、永続的な統合プロセスを実装できるActivitiビジネスプロセスエンジンが含まれています。 Apache Camelは、時間制限のある統合インタラクションを実装することを意図していません。 ActivitiなしでApache Camelの使用に失敗すると、未送信のデータがすべて失われ、すべてのトランザクションがロールバックされます。 同時に、 Activitiを使用して、プロセスの状態をデータベースに保存できます。 Red Hatは、 Red Hat JBoss BPM Suiteを使用してこのような問題を解決することを提案しています。



Red Hat JBoss Fuseに対するApache ServiceMixの主な利点は、 Apache ServiceMixにコンポーネントの新しいバージョンが含まれていることです。



成分 Apache ServiceMix Red Hat JBoss Fuse
最新バージョン 6.1.2 6.2.1
アパッチキャメル 2.16.3 2.15.1
Apache ActiveMQ 5.12.3 5.11.0
Apache cxf 3.1.5 3.0.4
アパッチ・カラフ 3.0.7 2.4


何を選択しますか? 普遍的な答えはありません。 Apache ServiceMixまたはRed Hat JBoss Fuseを使用した経験のある専門家チームがある場合は、 Apache ServiceMixのすべての利点を活用して、より少ない費用で支払うことができます。 経験がない場合、 Red Hatのサポートは冗長ではありません。



これらのシステムに加えて、 Apache Camelに基づいてTalend ESBがあります。 しかし、私はそれを実際に使ったことがなかったので、レビューには含まれていません。



All Articles