2009-10-23 16 views

答えて

194

「軽量のOSGiコンテナのラベルがFelixでより多くの機能が豊富なのOSGiコンテナとKarafないを対比されます。ギヨームNodet(Karafの作者)from hereを引用する

フェリックスはただのOSGiコアランタイムです。 Karafは、コンソール、SSHリモーティングメカニズム、ファイルデプロイヤーなどの他の機能を追加することで、Felixに基づく「ディストリビューション」を提供します。 Karafアーキテクチャのこの図で

、フェリックス(または他のOSGi実装 - 現在Equinoxもサポートされている)は、OSGiのボックスであり、他のボックスはKarafによって追加された特徴である。したがって

Karaf Architecture 、カラフでは満たされていない特定のニーズがある場合(基本的な実装にアクセスする必要がある場合を除き)、これは通常、より使い易いため、これを使用することは理にかなっています。

+2

ありがとうございます。それは混乱をクリアします:) – GabiMe

+0

ありがとう、素晴らしい、きれいな説明。 – eduardohl

+4

OSGiコンテナの優れた機能の1つは、必要なバンドルだけを選択してコンテナに展開できることです。だから私のアドバイスは、最初にアプリケーションを設計し、必要なものを選ぶことです。 「豊富な機能を備えているため、プラットフォーム全体をインストールする」というアドバイスは、巨大なJava EEアプリケーションサーバーに戻るようなものです。今はApache Karafがどこよりも大きいと言っているわけではありません。実際に必要なものだけを展開することができます。 –

3

@Marcel Karafは、Java EEサーバーのようにモノリシックまたは巨大ではありません。これは非常にスリムで最小限の実装です。これは、基本的なコンソール以外の機能をほとんど持たないコア製品であり、実際に構成ファイルなどを読むことができるようにファイルをロードします。その最新のzipファイルは19.1 MBです。うん。小さい。小さなデバイスでも簡単に実行でき、組み込みで動作します。

あなたが考えているかもしれないのは、Karafをコア/カーネルとして使うServiceMixのようなものです。しかし、それはCXF、ActiveMQ、Camel、および他のライブラリを完全な構成で含んでいます。それでも、彼らは最小、中、フルサイズを持っています。

本当に、プロジェクトの99%は、フェリックスで直接始めて、カラフを使わないのは意味がありません。

-1

現在、3個の人気のあるオープンソースのOSGiコンテナがあります

- Equinox. It is the modular Java runtime at the heart of the Eclipse IDE, 
    - Knopflerfish, Is an open source implementation of the OSGi R3 and OSGi R4 specifications. 
    - Apache Felix. Is the open source OSGi container from the Apache Software Foundation. 

http://www.javaworld.com/article/2077837/java-se/java-se-hello-osgi-part-1-bundles-for-beginners.html

Apacheプロジェクトは、フェリックスと呼ばれる汎用のOSGiコンテナを維持しています。ここ はServiceMixのように使用され

ServiceMixのとKarafの主な違いは ServiceMixのは、他の統合コンポーネントの束バンドルすることである - ActiveMQの メッセージブローカ、ラクダルーティングエンジン、およびいくつかの他のものを

に従って:http://kevinboone.net/osgitest.html

関連する問題