Moduł: mod_proxy_balancer
daje nam możliwość balancowania aplikacjami na poziomie sesji http, czyli klient łączy się za każdym razem z tym samym serwerem aplikacyjnym co żądanie, chyba, że jego sesja wygaśnie, wtedy może podpiąć się pod inny serwer.
Przykład konfiguracji mod_proxy_balancing
w oparciu o ciasteczko.
1. Musimy załadować moduł header do apache:
ln -s /etc/apache2/mods-available/headers.load /etc/apache2/mods-enabled/
2. Konfiguracja VirtualHost w apache:
ProxyRequests Off ProxyPass / balancer://blog-balancer/ ProxyPassReverse / balancer://blog-balancer/ <Proxy balancer://blog-balancer > Header add Set-Cookie "ROUTEID=.%{BALANCER_WORKER_ROUTE}e; path=/" env=BALANCER_ROUTE_CHANGED BalancerMember http://127.0.0.1:8080 route=1 BalancerMember http://INNY_HOST:8080 route=2 ... ProxySet stickysession=ROUTEID </Proxy> <Location / > Order allow,deny Allow from all </Location>
Po załadowaniu strony w ciasteczkach powinno nam się pojawić nowe ciastko:ROUTEID=.X
gdzie X
to numer serwera.