139

Apache KarafApache Felixのサブプロジェクトです。「軽量 OSGi コンテナ」として定義されています。

いつヘビーウェイトを使うべきか、いつライトウェイトを使うべきかわかりません。彼らのサイトはこれについてあまり説明していません。

4

3 に答える 3

216

「軽量OSGiコンテナー」ラベルは、Felixではなく、より機能豊富なOSGiコンテナーとKarafを対比しています。

ここからGuillaumeNodet(Karafの作者)を引用するには:

Felixは単なるOSGiコアランタイムです。Karafは、コンソール、SSHリモーティングメカニズム、ファイルデプロイヤーなどの他の機能を追加することにより、Felixに基づく「配布」を提供します。

Karafアーキテクチャのこの図では、Felix(または他のOSGi実装-現在Equinoxもサポートされています)がOSGiボックスであり、他のボックスはKarafによって追加された機能です。

Karafアーキテクチャ したがって、Karaf(基盤となる実装へのアクセスが必要)では満たされない特定のニーズがない限り、通常はこれを使用するのが理にかなっています。

于 2009-10-23T13:01:25.877 に答える
7

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

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

実際、プロジェクトの 99% では、代わりに Karaf を使用せずに Felix から直接開始することは意味がありません。

于 2016-03-03T17:02:09.273 に答える
-1

現在、一般的なオープン ソース OSGi コンテナーは 3 つあります。

  - 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 プロジェクトは、Felix と呼ばれる汎用の OSGi コンテナを維持しています。ここでは ServiceMix として使用され、

ServiceMix と Karaf の主な違いは、ServiceMix には、ActiveMQ メッセージ ブローカー、Camel ルーティング エンジン、およびその他のいくつかの他の統合コンポーネントがバンドルされていることです。

によると:http://kevinboone.net/osgitest.html

于 2016-11-03T23:42:49.043 に答える