Я учусь создавать кластерные приложения Java EE 7. Я сосредоточен на Сервер Glassfish v4.0.
На основе официальная документация (Глава 7, стр.133) , Нагрузку Glassfish можно сбалансировать с помощью сервера Apache Http с помощью mod_jk. Я немного читал об архитектуре кластеризации стеклянной рыбы, которую можно объяснить двумя следующими картинками:
(Второй снимок взят из следующая книга)
У меня вопрос:
где обычно устанавливается Apache в этом сценарии? Он установлен на той же машине, где Сервер администратора домена находится или на отдельной машине?
Консоль администратора не требует использования уровня Apache LB.
Вы можете добавить запись DNS для одного экземпляра Apache для URL-адреса, а затем использовать ее для балансировки нагрузки на доступные узлы.
Более распространенным для производственных ситуаций является использование LB, такого как F5, или LB на основе программного обеспечения, который взаимодействует с уровнем Apache, узлы Apache могут затем прокси-серверы для узлов сервера приложений, используя любой протокол, который лучше всего подходит для ситуации. Уровень Apache может обслуживать статический контент и, например, добавлять кеш или запускать некоторые модули безопасности, например.
Еще одно соображение - избегать размещения серверов приложений на том же уровне подсети, что и уровень веб-сервера, привязанный к общедоступному IP.
Технически вы можете просто поместить вещи на один и тот же компьютер в целях разработки, просто запустить два экземпляра сервера приложений, используя разные порты, и так далее.