为Apache/Tomcat负载平衡启用粘性会话模式

Raj*_*Raj 5 apache tomcat load-balancing httpd.conf

我试图在Apache中启用粘性会话,但它无法正常工作.以下是我所做的更改.我错过了什么吗?

我没有在访问日志中看到任何错误,但是来自一个用户的请求仍然会转到其他服务器.

步骤1:在server1和server2的负载均衡器的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/
Run Code Online (Sandbox Code Playgroud)

第2步:在server.xml中更新如下

a)server1中的server.xml

<Engine name="Catalina" defaultHost="localhost" jvmRoute="server1">    
Run Code Online (Sandbox Code Playgroud)

b)server2中的server.xml

<Engine name="Catalina" defaultHost="localhost" jvmRoute="server2">
Run Code Online (Sandbox Code Playgroud)

Kea*_*eks 4

marsWAR尝试从 ProxyPass 指令中删除该部分:

ProxyPass /marsWAR/ balancer://marsBalancer/
Run Code Online (Sandbox Code Playgroud)

如果仍然不起作用,请尝试<id>通过添加以下代码将会话直接指定给 ProxyPass 指令:

ProxyPass /marsWAR/ balancer://marsBalancer/ stickysession=JSESSIONID
Run Code Online (Sandbox Code Playgroud)