Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Enabling sticky session mode for Apache/Tomcat load balancing

I am trying to enable sticky sessions in Apache, however it is not working. Below are the changes made by me. Am I missing something?

I do not see any error in the access log, however request from one user is still going to other server.

Step 1: Added below in httpd.conf of load balancer of server1 & server2

<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/

Step 2: Updated below in server.xml

a) server.xml in server1

<Engine name="Catalina" defaultHost="localhost" jvmRoute="server1">    

b) server.xml in server2

<Engine name="Catalina" defaultHost="localhost" jvmRoute="server2">
like image 602
Raj Avatar asked Nov 16 '15 09:11

Raj


1 Answers

Try removing the marsWAR part from the ProxyPass directive :

ProxyPass /marsWAR/ balancer://marsBalancer/

If it still does not work, try specifying the session <id> directly to the ProxyPass directive by adding the following code:

ProxyPass /marsWAR/ balancer://marsBalancer/ stickysession=JSESSIONID
like image 66
KeatsPeeks Avatar answered Nov 15 '22 08:11

KeatsPeeks