В настоящее время мы запускаем приложение для интеграции с Java в ящик Linux. Сначала обзор приложения.Масштабируемость и высокая доступность автономного приложения Java
Приложение Java представляет собой автономное приложение (не развернутое на любом сервере приложений Java EE, таком как OracleAS, WebLogic, JBOSS и т. Д.). By Stand Alone Я имею в виду его НЕ приложение DESKTOP. Однако он запускается из командной строки из основного класса. Пользователь напрямую не взаимодействует с этим приложением. Сообщения отправляются в очередь с помощью API, который затем считывается моим приложением, которое постоянно работает 24/7. Я бы не квалифицировал это как настольное приложение, так как пользователь не имеет прямого взаимодействия с ним. (Не уверен, что это правильная аргументация, чтобы квалифицировать как один).
Он использует Spring и подключается к WebSphere MQ и Oracle Database Мы используем Spring Listener (Spring Message Driven POJO), который слушает очередь в WebSphere MQ. Когда в очереди появляется сообщение, приложение считывает сообщение из MQ и дампов (вставляет/обновляет) в базу данных.
Теперь вопрос:
- Как мы можем горизонтально масштабировать это приложение? Я имею в виду просто положить больше ящиков и запустить несколько экземпляров этого же приложения, является ли это жизнеспособным подходом?
- Должны ли мы рассмотреть возможность перехода от Spring MDP к EJB MDB? Таким образом, развертывание на сервере приложений. Есть ли какая-то дополнительная польза от этого?
- Есть запрос, чтобы сделать приложение High Available (HA)? Каковы предлагаемые методологии или стратегии, которые можно использовать для создания автономного приложения HA?
Мне нравится, как этот вопрос имеет больше изменений, чем что-либо еще (комментарии, голоса, избранное, наступления, андерверы ....) –