質問

Apache Karaf は、 Apache Felix 。 「軽量OSGiコンテナー」として定義されています。

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

役に立ちましたか?

解決

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

Guillaume Nodet(Karafの著者)を引用するにはここから

  

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

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

Karaf Architecture そのため、Karafが満たさない特定のニーズがない限り(基礎となる実装へのアクセスが必要)、通常はこれを使用する方が理にかなっています。

他のヒント

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

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

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

  

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

として使用されます
  

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

したがって: http://kevinboone.net/osgitest.html

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top