Балансировка нагрузки Apache не работает должным образом | mod_jk - PullRequest
0 голосов
/ 13 декабря 2011

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

Ниже приводится содержимое моего файла worker.properties:

worker.list=portalworker1,portalworker2,portalbalancer

worker.portalbalancer.type=lb
worker.portalbalancer.balance_workers=portalworker1,portalworker2

worker.portalbalancer.sticky_session=True

# Application server 1 Portal application
worker.portalworker1.type=ajp13
worker.portalworker1.host=10.178.197.91
worker.portalworker1.port=8009
worker.portalworker1.lbfactor=1

# Application server 2 Portal application
worker.portalworker2.type=ajp13
worker.portalworker2.host=10.178.197.90
worker.portalworker2.port=8009
worker.portalworker2.lbfactor=1

Проблема заключается в том, что в настоящее время запрос отправляется на любой сервер приложений (например, один запрос на сервере приложений).1 и второй запрос к серверу приложений 2) который будет обв.не будет работать.

Я также проверил журнал mod_jk в режиме отладки:

Для 1-го запроса

[Tue Dec 13 16:46:12.222 2011] [16097:47166030803776] [debug] get_most_suitable_worker::jk_lb_worker.c (946): searching worker for partial sessionid UH76jWj-q2yX39prlS-nBA**
[Tue Dec 13 16:46:12.222 2011] [16097:47166030803776] [debug] get_most_suitable_worker::jk_lb_worker.c (1001): found best worker portalworker2 (portalworker2) using method 'Request'

Для 2-го запроса:

[Tue Dec 13 16:46:12.434 2011] [16100:47166030803776] [debug] get_most_suitable_worker::jk_lb_worker.c (946): searching worker for partial sessionid UH76jWj-q2yX39prlS-nBA**
[Tue Dec 13 16:46:12.434 2011] [16100:47166030803776] [debug] get_most_suitable_worker::jk_lb_worker.c (1001): found best worker portalworker1 (portalworker1) using method 'Request'

Это также гарантирует, что идентификаторы сеанса для 2 реквизитов одинаковы, но все же найдены разные работники.

Есть идеи, что я делаю неправильно?

1 Ответ

0 голосов
/ 14 декабря 2011

Проблема заключалась в том, что я не добавил jvmRoute в свой файл server.xml для разных серверов приложений, чтобы различать эти серверы, а также для useJK не было задано значение true в файле jboss-service.xml.

...