Как мне постепенно перейти с OSGi на монолит Spring Boot?JAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Гость
 Как мне постепенно перейти с OSGi на монолит Spring Boot?

Сообщение Гость »


В настоящее время у меня есть приложение OSGi, насчитывающее около 300 пакетов приложений (многомодульный проект Maven), и моя цель — перенести его из OSGi в монолит Spring Boot. Приложение OSGi использует Spring, а службы и ссылки OSGi указываются с помощью Spring DM.
Мне удалось довольно легко перенести подмножество (около 10%), поскольку все службы поддерживаются bean-компоненты, и все ссылки уже помечены @Autowired. К сожалению, большая часть конфигурации Spring находится в XML. Это означает, что идентификаторы многих компонентов явно указаны (что не позволяет легко использовать полное имя класса в качестве имени компонента).
Цель состоит в том, чтобы в конечном итоге создать отдельные микросервисы Spring Boot для каждый из отдельных компонентов приложения, но было бы полезно делать это постепенно. Вместо того, чтобы сразу переходить от OSGi к отдельным микросервисам, наша команда планирует сделать это поэтапно и сначала перейти от OSGi, а затем перейти от монолита к микросервисам (мы предпочли бы сделать два шага по 6 месяцев, чем один 10- или 12-месячный шаг). -месяц).
Меня беспокоит следующее:
  • Глобальное пространство имен bean-компонентов: Когда Службы OSGi удалены, каждый компонент будет виден каждому модулю. Это может привести к коллизиям или затенению, когда один компонент маскирует другой. Аналогичная проблема заключается в том, что наши контроллеры дополняются bean-компонентами @ControllerAdvice, которые обрабатывают исключения. Несовместимость может возникнуть, если разные bean-компоненты @ControllerAdvice по-разному обрабатывают одно и то же исключение.
  • Исполняемые файлы: по умолчанию, если я создаю исполняемый файл Spring Boot. Jar, он обернет все свои зависимости в один Jar. В идеале мы предпочли бы иметь автономный Jar, в котором мы могли бы указать каталог, содержащий все зависимости, необходимые для выполнения Jar. Это позволило бы нашей команде заменить один или два из трехсот Jars при отладке/устранении неполадок, а не перекомпилировать все приложение.
Такого не существует. быть универсальным ответом на эти проблемы (ответы, которые лишь частично решают проблемное пространство, по-прежнему полезны). Некоторые части могут потребовать просто грубой силы, например, преобразование всей конфигурации XML в конфигурацию аннотаций, но если ответ поможет упростить этот процесс, он будет иметь большое значение.
Спасибо за ваша помощь.


Источник: https://stackoverflow.com/questions/781 ... t-monolith
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Можно ли использовать Spring Boot с OSGi? Если нет, есть ли планы использовать OSGi Spring Boot?
    Anonymous » » в форуме JAVA
    0 Ответы
    27 Просмотры
    Последнее сообщение Anonymous
  • Модульный монолит и внедрение зависимостей
    Anonymous » » в форуме C#
    0 Ответы
    14 Просмотры
    Последнее сообщение Anonymous
  • Laravel модульный монолит пользовательский обработчик исключений
    Anonymous » » в форуме Php
    0 Ответы
    6 Просмотры
    Последнее сообщение Anonymous
  • Laravel модульный монолит пользовательский обработчик исключений
    Anonymous » » в форуме Php
    0 Ответы
    4 Просмотры
    Последнее сообщение Anonymous
  • Управление ростом в архитектуре микросервиса: модульный монолит раствором? [закрыто]
    Anonymous » » в форуме JAVA
    0 Ответы
    4 Просмотры
    Последнее сообщение Anonymous

Вернуться в «JAVA»