Я пишу приложение spring-boot, которое должно получать и отправлять JMS-сообщения. Адрес, порт, логин и пароль для подключения к брокеру читаются из конфигов. Изначально я не знаю, с каким типом брокера придется работать. Существует ли универсальный JMS клиент для работы с любыми брокерами? Перелопатил гугл и, как я понял, для каждого брокера (ActiveMQ, RabbitMQ, IBM MQ) существует своя реализация клиента. Или я что-то неправильно понимаю?
Если вы будете придерживаться спецификации JMS и не использовать различные расширения и улучшения от конкретных брокеров, то ваш код должен работать с любым из них. Но набор библиотек (драйверов) для каждого брокера должен быть свой.
Универсального JMS-клиента не существует, но есть возможность не переписывать код под каждого провайдера. При правильной реализации должно работать следующим образом.
JMS - это API, в его составе в основном интерфейсы, не имеющие реализации. Таким образом, код, использующий JMS API работает с абстракциями, изначально не имеющими реализации (и соответственно - неработоспособными).
Реализация находится в JMS-библиотеках, поставляемых с конкретным брокером - у каждого продукта своя реализация. Чтобы заставить всё работать, требуется:
Вы можете писать основную бизнес-логику, работающую с интерфейсами, и эта часть не должна меняться. Скорее всего, именно конфигурация окажется самой сложной задачей, причём может оказаться так, что для каждого брокера её придётся решать по разному. Основная цель - создать объекты, реализующие интерфейсы JMS (такие, как фабрика подключений, сессии, очереди и прочее). Как это сделать - отдельная большая тема, скорее всего, придётся читать документацию касательно интеграции через JMS по каждому брокеру.
Альтернативный вариант - поискать готовые решения, более высокого уровня (по сравнению с брокерами), например, интеграционные платформы, в которых уже есть поддержка разных брокеров.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Возможно очень глупый вопрос, но где мой вывод текста? Уже долго мучаюсь с этой мелочью)
Как новичок прошу помощи в таком срамном вопросе как поиск библиотек в интернете(не установка, а именно поиск)
Добрый день! Скачал проект с github: https://githubcom/spring-guides/tut-react-and-spring-data-rest/tree/master/basic