На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Следующие правила действуют в данном разделе в дополнение к общим Правилам Форума
1. Здесь обсуждается Java, а не JavaScript! Огромная просьба, по вопросам, связанным с JavaScript, SSI и им подобным обращаться в раздел WWW Masters или, на крайний случай, в Многошум.
2. В случае, если у вас возникают сомнения, в каком разделе следует задать свой вопрос, помещайте его в корневую ветку форума Java. В случае необходимости, он будет перемещен модераторами (с сохранением ссылки в корневом разделе).

3. Запрещается создавать темы с просьбой выполнить какую-то работу за автора темы. Форум является средством общения и общего поиска решения. Вашу работу за Вас никто выполнять не будет.
4. Не рекомендуется создавать несколько несвязанных вопросов в одной теме. Пожалуйста, создавайте по одной теме на вопрос.
Модераторы: dark_barker, wind
  
> OSGI in action
    Всем привет, кто внедрял сабж, плюсы имеются или не имеётся?
      Плюсы OSGi:
      OSGi обеспечивает модульную архитектуру, позволяющую разделять приложение на независимые компоненты. Каждый модуль представляет собой отдельный пакет, который может быть установлен, обновлен или удален без необходимости перезагрузки всей системы. Это позволяет легко создавать гибкие и расширяемые приложения.

      Динамическое развертывание: OSGi позволяет динамически устанавливать, обновлять и удалять модули во время работы приложения. Это позволяет внедрять новые функциональные возможности или исправлять ошибки без остановки приложения. Такой подход обеспечивает высокую доступность и минимизирует время простоя системы.

      Управление зависимостями: OSGi предоставляет механизмы для управления зависимостями между модулями. Компоненты могут явно объявлять свои зависимости от других модулей, что обеспечивает более четкую структуру приложения и упрощает его сопровождение.

      Сервисная модель: OSGi предлагает сервисную модель, которая позволяет модулям предоставлять и использовать сервисы. Сервисы могут быть динамически обнаружены и связаны во время выполнения. Это способствует созданию гибких и расширяемых приложений, в которых компоненты могут взаимодействовать через интерфейсы сервисов.

      Экосистема инструментов: OSGi имеет развитую экосистему инструментов, включая среды разработки, сборщики модулей, системы управления конфигурациями и т. д. Это упрощает разработку, развертывание и сопровождение приложений, основанных на OSGi.

      Минусы OSGi:
      Сложность: Использование OSGi может быть сложным, особенно для разработчиков, не знакомых с модульными системами. OSGi вводит дополнительный уровень сложности в разработку и требует понимания его концепций и особенностей.

      Накладные расходы: В некоторых случаях использование OSGi может привести к некоторым накладным расходам. Разделение приложения на модули и управление зависимостями требует дополнительной работы и проектирования. Это может увеличить сложность разработки и затраты на обучение разработчиков.

      Ограничения: OSGi имеет некоторые ограничения, которые могут оказаться проблематичными для некоторых типов приложений. Например, сложность взаимодействия с некоторыми традиционными Java-фреймворками или библиотеками, которые не были разработаны с учетом модульной архитектуры.

      Совместимость: Использование OSGi может быть вызовом при интеграции с существующими системами или фреймворками, особенно если они не поддерживают модульность или используют статический класспас. Требуется тщательное тестирование и анализ совместимости, чтобы убедиться, что все компоненты и зависимости работают должным образом.

      Распределение и развертывание: Распределение приложений, основанных на OSGi, может быть сложным процессом, особенно при интеграции с другими инструментами и средами разработки. Возможно, потребуется дополнительная настройка и конфигурация для правильного функционирования приложения.

      В целом, OSGi предлагает мощный инструмент для создания модульных и гибких приложений, но его использование требует определенных усилий и может быть нецелесообразным для всех типов проектов. При оценке использования OSGi следует внимательно взвесить его плюсы и минусы в контексте конкретных требований и ограничений проекта.
      Сообщение отредактировано: MaIron -
        Конечно +100500, а есть примеры отзывов?
          Не по результатам внедрения, а по результатам использования (разработки на eclipse, wls): токсичное дерьмо, в которое не стоит наступать. Ну и в рамках одной jvm качественно реализовать невозможно в принципе, джава к этому не приспособлена (и те увечья, которые были нанесены платформе 9-й версией, никак не помогают).
            Цитата wind
            wind

            Учтем СПС)) А где провалы там?
              При добавлении/доработке новых модулей для OSGI-контейнера (который сам сборная солянка) слишком часто разбитое корыто получается. Или контейнер раком встанет, или все кроме пациента, или сам пациент, что-то постоянно ломается при совершенно загадочных обстоятельствах или вообще работает только на отдельных компьютерах. На выяснение и устранение проблем уходит океан времени. Связано с тем, что в java нет никаких готовых средств для изоляции компонентов, в существующих реализациях для этого только ухищряются с загрузчиками классов, используя их не по назначению.
              Сообщение отредактировано: wind -
                +100500
                0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                0 пользователей:


                Рейтинг@Mail.ru
                [ Script execution time: 0,0247 ]   [ 15 queries used ]   [ Generated: 15.04.24, 22:56 GMT ]