Могу ли я использовать Distributed OSGi и ConfigurationAdmin вместе?

If:

  • У меня есть пакет, который я хочу запустить на n OSGi-контейнерах, экспортирующих некоторые службы;
  • Я использую DS для регистрации измененного метода при изменении конфигурации, поэтому я могу обновлять службу через ConfigurationAdmin и удаленно экспортировать интерфейсы в соответствии с RFC119;
  • Я использую Discovery для вызова этих служб из других пакетов на других устройствах, возможно ли иметь центральную конфигурацию для этой службы с помощью ConfigurationAdmin, чтобы я мог опубликовать изменение конфигурации через Configuration Admin, и оно было получено всеми экземплярами служба работает?

Из всего, что я прочитал, кажется, что ConfigurationAdmin не знает о сети и является локальным для каждого контейнера OSGi?

Заранее спасибо за понимание :)


person Mjgp2    schedule 07.04.2010    source источник


Ответы (2)


Итак, ваш пакет работает на N контейнерах, экспортирует свой сервис только в этот локальный контейнер и экспортирует ManagedService с помощью удаленных сервисов, чтобы опубликовать его в каком-то «центральном» контейнере, в котором работает ConfigurationAdmin?

Вы правы в том, что ConfigurationAdmin не осведомлен о сети, но если пакет удаленно публикует свой ManagedService в этом контейнере, на котором работает Configuration Admin, он должен работать. Единственное предостережение заключается в том, что каждый ManagedService должен иметь уникальный PID службы, поэтому вы не можете просто опубликовать один и тот же пакет в N контейнерах, если не убедитесь, что каждый экземпляр в конечном итоге использует уникальный PID.

person Marcel Offermans    schedule 04.05.2010

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

person lothar    schedule 15.04.2012