Балансировка нагрузки в Tomcat

Я хочу реализовать балансировку нагрузки в tomcat 6.0, чтобы мы могли создать более одного экземпляра tomcat, и когда любой из экземпляров не работает, другой экземпляр будет запускать наше приложение. так что наше приложение никогда не будет закрыто, даже если поступит большое количество одновременных запросов. Но я понятия не имею, чтобы реализовать это. Пожалуйста, дайте ваши ценные предложения.

6 ответов

Вы можете использовать mod_proxy или mod_jk, чтобы включить балансировку нагрузки. Смотрите здесь для получения инструкций.

У вас есть выбор между аппаратным обеспечением (например, Big F5) или программным балансировщиком нагрузки (Apache mod_proxy или mod_jk). В любом случае вам нужно будет выбрать правильный набор конфигураций для производительности, которые лучше всего подходят для вашей настройки.

Мы используем Piranha (это больше похоже на пакет различных инструментов). Он поставляется с RedHat Linux, но я думаю, что он должен идти вместе с CentOS и Fedora. Конечно, вы можете скачать пакет в любое время.

Это балансировщик нагрузки в сочетании с проверкой работоспособности и с интерфейсом конфигурации GUI.

Не уверен, если это можно использовать, если ваши запросы с учетом состояния, хотя.

На их сайте есть инструкция - http://tomcat.apache.org/tomcat-6.0-doc/cluster-howto.html Я хотел бы, чтобы кто-нибудь объяснил конфигурацию Tomcat 6 grrrrrrrrrrrrr

Если вы используете сессию для чего-либо, вы должны помнить либо

  • а) использовать липкое распределение нагрузки, чтобы первый сервер, на который попадает данный пользователь, продолжал использовать тот же сервер

  • б) Включите репликацию сеансов, чтобы каждый сеанс был на всех серверах.

Обычно это проще сделать, но в случае сбоя сервера пользователь выйдет из приложения и нарушит свой рабочий процесс. B - лучшее решение, но оно не масштабируется до такого количества серверов.

Это действительно зависит. Если вы хотите, чтобы сервер Apache выдавал запрос в зависимости от нагрузки, вам нужно использовать mod_jk или mod_proxy.

Для mod_jk вот быстрое и грязное руководство, если вы хотите проверить, будет ли это работать:

http://tomcat.apache.org/connectors-doc/generic_howto/quick.html

В вашем $apacheHome/worker.properties для каждого сервера tomcat добавьте рабочую запись с именем и портом AJP, которые описаны в файле server.xml каждого сервера как соединитель с обычно портом 8009.

Убедитесь, что у вас есть библиотека mod_jk в вашем каталоге apache и измените ваш httpd.conf необходимой информацией из ссылки, и у вас будет балансировка нагрузки после перезапуска. Неважно, какой сервер запускается первым.

Существует также mod_proxy, но я не знаком с ним. Это, однако, выглядит хорошей альтернативой.

Другие вопросы по тегам