On Mon 26.10.2009 21:18, Robinson, Michael wrote:
I've got HAproxy 1.3.22 configured on two EC2 servers in front of two
Apache/Tomcat frontends serving a JSP-based mobile phone application.
The application requires session stickiness - I've tried every
documented alternative HAproxy offers for session persistence,
unfortunately without luck. The mobile device (well, our application)
does not support cookies and will not echo a modified jsessionid cookie
on subsequent requests. Two options seem ideal, but there are
1. appsession jsessionid len 52 timeout 1h
However, since cookies aren't an option, we hoped to leverage
appsession URL lookup... which has the honor of being on the matrix of
all known bugs<http://haproxy.1wt.eu/knownbugs-1.3.html> posted on
10/18 (thanks for posting this, BTW!)
Any ideas if/when this may make it into a stable release?
It should work in the current release of haproxy.
Do you have faced some problems, or bugs?
2. balance url_param jsessionid check_post
This option could work... but it doesn't (for me, at least). Is the
config line wrong? Here's an example HTTP request from our log file:
... "POST /app; jsessionid=55A964502A7D0565A1C2ADE432AD3EF0 HTTP/1.1"
Can/should I just modify the source for url_param matching to look for
';' instead of '?' as a workaround?
This could not work due to the fact that the jsessionid=... is not part
or query string.
url_param The URL parameter specified in argument will be looked up in
the query string of each HTTP GET request.
I think it is not a good idea to change the delimiter from ';' to '?'.
Maybe you will be happy with 'uri' as lb method?
Maybe there should be parameter delimiter or regex for the load
balancing algorithm uri?
E.g.: delimregex ;\\s+jsessionid=([:xdigit:]+) or similar