Question

Apache Karaf est un sous-projet de Apache Felix . Il est défini comme "un conteneur OSGi léger".

Je ne comprends pas quand devrais-je utiliser le poids lourd et quand utiliser le poids léger. Leur site n'explique pas trop cela.

Était-ce utile?

La solution

Le libellé "conteneur OSGi léger" contraste avec Karaf avec des conteneurs OSGi plus riches en fonctionnalités, pas avec Felix .

Pour citer Guillaume Nodet (auteur de Karaf), à partir de :

  

Felix n’est que le cœur de l’exécution OSGi. Karaf fournit une "distribution" basé sur Felix en ajoutant d'autres fonctionnalités telles qu'une console, un mécanisme de communication à distance SSH, un dépliant de fichiers et plus encore.

Dans ce diagramme de l'architecture Karaf, Felix (ou une autre implémentation OSGi - actuellement Equinox est également est la boîte OSGi, les autres boîtes sont les fonctionnalités ajoutées par Karaf:

Architecture de Karaf Par conséquent, sauf si vous avez des besoins spécifiques qui ne sont pas satisfaits par Karaf (nécessitant un accès à l'implémentation sous-jacente), il est généralement logique de les utiliser, car cela fournit davantage de solutions prêtes à l'emploi.

Autres conseils

@Marcel Karaf n'est pas monolithique ou énorme comme un serveur Java EE. C'est une implémentation très mince et minimaliste. Il s’agit d’un produit de base dépourvu de nombreuses fonctionnalités autres qu’une console de base, le chargement de fichiers permettant de lire les fichiers de configuration, etc. Le dernier fichier zip disponible est de 19.1 MB. Ouais. Petit. Il peut facilement fonctionner sur de petits appareils et fonctionner en mode embarqué.

Vous pensez peut-être davantage à ServiceMix, qui utilise Karaf comme noyau / noyau. Mais il inclut CXF, ActiveMQ, Camel et d’autres bibliothèques dans sa configuration complète. Même alors, ils ont des tailles minimales, moyennes et complètes.

Vraiment, pour 99% des projets, il ne serait pas logique de commencer directement avec Felix et de ne pas utiliser Karaf à la place.

  

Il existe actuellement trois conteneurs OSGi Open Source populaires:

  - 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

Le projet Apache gère un conteneur OSGi à usage général appelé Felix. Ici est utilisé comme ServiceMix et

  

La principale différence entre le ServiceMix et Karaf est que   ServiceMix regroupe de nombreux autres composants d'intégration & # 8212; ActiveMQ   le courtier de messages, le moteur de routage Camel et quelques autres éléments

Selon: http://kevinboone.net/osgitest.html

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top