#jsf-2 #glassfish #load-balancing #cluster-computing
#jsf-2 #glassfish #балансировка нагрузки #кластерные вычисления
Вопрос:
Я собираюсь создать приложение, используя jsf 2.x, glassfish 3.1 с открытым исходным кодом, JPA postgresql. Я хочу разработать его таким образом, чтобы мое приложение можно было кластеризировать на нескольких физических серверах и сбалансировать нагрузку.
Какие рекомендуемые бесплатные технологии с открытым исходным кодом для кластеризации и балансировки нагрузки веб-приложения jsf 2.0?
Каковы наилучшие подходы и что я должен иметь в виду перед планированием и проектированием своего приложения?
Также приветствуется любая другая полезная информация, связанная с этим вопросом )).
Заранее спасибо.
Ответ №1:
Сервер приложений Glassfish имеет встроенную поддержку кластеров. Вы должны запустить свое приложение на нескольких экземплярах glassfish и настроить сервер для репликации данных на другой сервер (связать серверы в кластер).
Чтобы включить репликацию для вашего приложения, вы должны поместить следующий тег в web.xml
<distributable />
Когда кластер настроен правильно, сеансы http будут реплицироваться между узлами кластера. Осталось настроить балансировку нагрузки, такую как Apache httpd, которая будет принимать запросы и направлять их на определенный сервер в кластере.
В общем — избегайте хранения данных в сеансе, насколько это возможно. Сделайте ваши компоненты сериализуемыми с помощью области с более длительным сроком службы, чем запрос.
Для получения дополнительной информации загляните в Google.