Назад | Перейти на главную страницу

Липкий сеанс Apache mod_proxy иногда не работает

У нас есть четыре Tomcats с балансировкой нагрузки с помощью Apache mod_proxy (mod_ajp). mod_proxy настроен следующим образом, lbmethod = byrequests и sticky_session включены. Но иногда мы замечали, что apache не поддерживает липкую сессию. то есть Apache отправляет запрос, который должен быть получен Tomcat 1, в Tomcat 2, в результате чего пользователь теряет аутентификацию. Будет ли mod_proxy всегда соблюдать липкую сессию или нет, если нет, то каковы сценарии, она не будет учитывать настройку липкой сессии.

ОБНОВИТЬ:

Конфигурация прокси в httpd.conf

<Proxy balancer://app-lb>
     BalancerMember ajp://10.**.**.**:5009/app min=1 max=300 route=r1 loadfactor=1 timeout=300 KeepAlive=On
     BalancerMember ajp://10.**.**.**:5010/app min=1 max=300 route=r2 loadfactor=1 timeout=300 KeepAlive=On
     BalancerMember ajp://10.**.**.**:5011/app min=1 max=300 route=r3 loadfactor=1 timeout=300 KeepAlive=On
     BalancerMember ajp://10.**.**.**:5012/app min=1 max=300 route=r4 loadfactor=1 timeout=300 KeepAlive=On
     ProxySet lbmethod=byrequests
</Proxy>
ProxyPass /app  balancer://app-lb stickysession=JSESSIONID

Конфигурация коннектора в server.xml

<Connector port="5011" protocol="org.apache.coyote.ajp.AjpNioProtocol" keepAliveTimeout="30000" connectionTimeout="30000" redirectPort="8443" maxPostSize="10485760"/>