为 Apache/Tomcat 负载平衡启用粘性会话模式
Enabling sticky session mode for Apache/Tomcat load balancing
我正在尝试在 Apache 中启用粘性会话,但它不起作用。以下是我所做的更改。我错过了什么吗?
我在访问日志中没有看到任何错误,但是来自一个用户的请求仍在转到其他服务器。
步骤 1:在服务器 1 和服务器 2 的负载均衡器 httpd.conf 中添加以下内容
<Proxy balancer://marsBalancer>
BalancerMember http://server1fullname:8080 route=server1
BalancerMember http://server2fullname:8080 route=server2
ProxySet lbmethod=bytraffic
ProxySet stickysession=JSESSIONID
</Proxy>
ProxyPass /marsWAR/ balancer://marsBalancer/marsWAR/
第 2 步:更新如下 server.xml
a) 服务器 1
中的 server.xml
<Engine name="Catalina" defaultHost="localhost" jvmRoute="server1">
b) 服务器 2
中的 server.xml
<Engine name="Catalina" defaultHost="localhost" jvmRoute="server2">
尝试从 ProxyPass 指令中删除 marsWAR
部分:
ProxyPass /marsWAR/ balancer://marsBalancer/
如果仍然无效,请尝试通过添加以下代码将会话 <id>
直接指定到 ProxyPass 指令:
ProxyPass /marsWAR/ balancer://marsBalancer/ stickysession=JSESSIONID
- 一切的版本号 = ?
- 必须是
stickysession=JSESSIONID|jsessionid
因为Cookie名称是大写的,但是路径参数名称是小写的。支持路径参数也需要 scolonpathdelim=On
[1] 另请参阅该文档页面上的 "Troubleshooting load balancer stickyness"。
[1] http://httpd.apache.org/docs/2.4/mod/mod_proxy_balancer.html#stickyness_implementation
我正在尝试在 Apache 中启用粘性会话,但它不起作用。以下是我所做的更改。我错过了什么吗?
我在访问日志中没有看到任何错误,但是来自一个用户的请求仍在转到其他服务器。
步骤 1:在服务器 1 和服务器 2 的负载均衡器 httpd.conf 中添加以下内容
<Proxy balancer://marsBalancer>
BalancerMember http://server1fullname:8080 route=server1
BalancerMember http://server2fullname:8080 route=server2
ProxySet lbmethod=bytraffic
ProxySet stickysession=JSESSIONID
</Proxy>
ProxyPass /marsWAR/ balancer://marsBalancer/marsWAR/
第 2 步:更新如下 server.xml
a) 服务器 1
中的 server.xml<Engine name="Catalina" defaultHost="localhost" jvmRoute="server1">
b) 服务器 2
中的 server.xml<Engine name="Catalina" defaultHost="localhost" jvmRoute="server2">
尝试从 ProxyPass 指令中删除 marsWAR
部分:
ProxyPass /marsWAR/ balancer://marsBalancer/
如果仍然无效,请尝试通过添加以下代码将会话 <id>
直接指定到 ProxyPass 指令:
ProxyPass /marsWAR/ balancer://marsBalancer/ stickysession=JSESSIONID
- 一切的版本号 = ?
- 必须是
stickysession=JSESSIONID|jsessionid
因为Cookie名称是大写的,但是路径参数名称是小写的。支持路径参数也需要scolonpathdelim=On
[1] 另请参阅该文档页面上的 "Troubleshooting load balancer stickyness"。
[1] http://httpd.apache.org/docs/2.4/mod/mod_proxy_balancer.html#stickyness_implementation