Greetings,
  I am running httpd 2.2.23.0-64 with mod_proxy to load balance Tomcat
6.0.36.B containers.  I have encountered a somewhat strange situation, and
I was wondering if anyone could comment and or propose an alternative.

I have a case where my tomcat containers have multiple webservice
applications deployed.  Most of the deployments are stateless, but a few of
them require session stickiness at the proxy layer.  I am looking for ways
to better distribute the workload of the stateless webservice calls, with
the hope of not having to create a new tomcat container separate stateful
and stateless sessions.  The following configuration was tested, but had
unexpected results...

<Proxy balancer://webservices-sticky>
    BalancerMember
ajp://tccontainer2.test.udayton.edu:12002route=webservices2-sticky
    BalancerMember
ajp://tccontainer1.test.udayton.edu:12002route=webservices1-sticky
status=+H
    ProxySet lbmethod=byrequests
    ProxySet stickysession=JSESSIONID
</Proxy>

<Proxy balancer://webservices>
    BalancerMember ajp://tccontainer1.test.udayton.edu:12002 loadfactor=1
route=webservices1
    BalancerMember ajp://tccontainer2.test.udayton.edu:12002 loadfactor=2
route=webservices2
    ProxySet lbmethod=byrequests
</Proxy>

What I find is that balancer://webservices never sends any requests to
ajp://tccontainer1.test.udayton.edu:12002.  It would appear that the
status=+H applies to the BalancerMember object instead of
balancer://webservices-sticky.  When I remove the status=+H, it would
appear that balancer://webservices load balances properly, but the
consequence is the possibility of new stateful calls being routed to
tccontainer1.

Is this behaviour expected?  Due to the long term nature of these sessions,
I was hoping to avoid making both servers hold sessions and use the
loadfactor to route a larger proportion of stateless calls to the server
not service the stateful sessions.  Is there a means to accomplish the end
goal with out creating additional tomcat containers?

Thank you in advance for your time and consideration.

Sean Alderman
Senior Engineer
University of Dayton, UDit Systems Integration

Reply via email to