Servicemixの代わりにKarafを使用している人はいますか?もしそうなら、どのようにしてこの決定に至ったのですか?ServicemixがKarafの周りに機能のレイヤーを追加していることを知っていますが、Karafが単独で使用されているかどうか、そしてその理由は...
4 に答える
多くのアプリケーションで Karaf を使用しています。いくつかの異なるプラットフォーム (JBoss 4.2 インスタンス、Tomcat、およびいくつかの Felix インスタンス) 間の統合に既に Camel (JMS および Esper) を使用していましたが、これがうまく機能していたため、これも移行する正当な理由はほとんどありませんでした (これは、 ServiceMix を検討してください)。
私たちがいくつかの Felix ノードを持っている唯一の理由は、(クライアント デスクトップ上で) 使用が制限されており、ほとんど更新する必要がなく、これらのノードのフットプリントを最小にしたかったからです。サーバー側の OSGi には、Karaf を使用しています。
Karafは、実稼働環境に必要なすべての機能を提供します ( apache-karaf タグの infoを参照してください)。標準の最小限のフレームワーク (pax-exam を使用) に対して開発とテストを行いますが、Karaf にデプロイします。
ESB、JCA、BPEL などは必要ないが、安定した調整可能な OSGi コンテナーが必要な場合は、Karaf だけで十分です。(また、ServiceMix の機能の限定されたサブセットが必要であることがわかった場合は、これらをいつでも Karaf インスタンスにインストールできます)。
また、maven ビルドの一部としてKaraf ディストリビューションをカスタマイズすることもできます。
最近、HazelCast を使用したCellarと呼ばれる Karaf のクラスタリング サブプロジェクトがありますが、これが ServiceMix にも当てはまるかどうかはわかりません。
Karaf の人生は ServiceMix コアとして始まりました。現在、ServiceMix は実際には、Karaf コンテナーにデプロイされる一連のバンドルです。ServiceMix には、karaf にはない多くの優れた機能を実行する非常に便利なバンドルが多数あります。つまり、ServiceMix を使用する 2 つの主な理由は、1) ESB、2) NMR (Karaf のバンドルとインスタンス間のコミュニティを可能にする機能) です。
とはいえ、ServiceMix グループは現在、ESB および NMR 機能を削除し、Camel の管理コンテナーになることに重点を置いたバージョン 5 を計画しています。ESB では、BPL (ビジネス プロセス言語) を使用して記述できるコンポーネントを作成する際に多大な労力が費やされました。しかし、ServiceMix を作成した人々は、BPL とほぼ同じことを行う EIP (Enterprise Integration Patterns) の実装に焦点を当て始めましたが、より標準化され、受け入れられた方法でそれを行います。この作業は Camel プロジェクトの下で行われました。
つまり、要するに。ServiceMix 4+ を使用している場合は、Karaf も使用しています。より堅牢な統合環境が必要な場合、現在 (少なくとも Apache/Felix の世界では) 選択されている環境は、Karaf、Camel、および Servicemix のいくつかのバンドルです。
KarafにはCXF は付属していません。
ServiceMix の純粋に抽出されたカーネル。ただし、以下のように CXF を Karaf にインストールできます。
karaf:root()> feature:repo:add cxf
フィーチャー URL が追加されると、次のコマンドを使用して「提供された」フィーチャーを確認できます。
カラフ:ルート()> 機能:レポ:機能:リスト | grep cxf
cxf をインストールするには、以下のコマンドを実行します
karaf:root()> 機能:cxf をインストール