Вопрос

Апач Караф является подпроектом Апач Феликс.Он определяется как "облегченный контейнер OSGi".

Я не понимаю, когда мне следует использовать тяжелый вес, а когда легкий.Их сайт не слишком подробно объясняет это.

Это было полезно?

Решение

Ярлык «облегченного контейнера OSGi» контрастирует Karaf с более функциональными контейнерами OSGi, нет с Феликсом .

Цитировать Гийома Ноде (автора Карафа) отсюда :

  

Felix - это просто время выполнения ядра OSGi. Караф обеспечивает «распределение» основанный на Феликсе, путем добавления других функций, таких как консоль, механизм удаленного взаимодействия SSH, средство развертывания файлов и многое другое.

На этой схеме архитектуры Karaf Феликс (или другая реализация OSGi - в настоящее время Equinox также поддерживается) - это окно OSGi, остальные - функции, добавленные Karaf:

Архитектура Карафа Поэтому, если у вас нет особых потребностей, которые не удовлетворяются Karaf (требующих доступа к базовой реализации), обычно имеет смысл использовать это, так как это обеспечивает больше «из коробки».

Другие советы

@Marcel Karaf не монолитен и не огромен, как Java EE-сервер.Это очень тонкая и минималистичная реализация.Это базовый продукт без особых функциональных возможностей, кроме базовой консоли, загрузки файлов, чтобы вы действительно могли читать файлы конфигурации, и т.д.Последний его zip-файл составляет 19,1 МБ.Да.Маленький.Он может легко запускаться на небольших устройствах и работать во встроенных.

Возможно, вы думаете о чем-то больше похожем на ServiceMix, который использует Karaf в качестве ядра.Но он включает в себя CXF, ActiveMQ, Camel и другие библиотеки в своей полной конфигурации.Даже тогда они имеют минимальные, средние и полные размеры.

Действительно, для 99% существующих проектов не имело бы смысла начинать непосредственно с Felix и не использовать вместо этого Karaf.

  

В настоящее время существует три популярных контейнера 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 общего назначения под названием Felix. Здесь используется как ServiceMix и

  

Основное различие между ServiceMix и Karaf заключается в том, что   ServiceMix объединяет множество других компонентов интеграции & # 8212; ActiveMQ   брокер сообщений, механизм маршрутизации Camel и некоторые другие вещи

Согласно: http://kevinboone.net/osgitest.html

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top