3

我们向 2 个 JBoss 实例发送请求的代理配置(在 httpd.conf 中)基于mod_proxy_balancer

<Proxy balancer://mycluster>
Allow from all
BalancerMember http://192.168.1.2:9080
BalancerMember http://192.168.1.2:8080
</Proxy>

ProxyPass /app balancer://mycluster/app
ProxyPassReverse /app  http://192.168.1.2:9080/app
ProxyPassReverse /app  http://192.168.1.2:8080/app 

如何基于会话标识符启用粘性负载平衡。我是否应该将以下标志设置为代理声明的一部分?它似乎没有任何效果。我将如何调试以查看这是否正常工作。

SetEnv BALANCER_SESSION_STICKY JSESSIONID

4

1 回答 1

2

PHP 粘性会话文章读起来很有趣,它引导我寻找 JBoss 特定的解决方案。关键是将路由附加到 jsessionid 参数/cookie 中的会话值。JBoss(实际上是 tomcat)对此具有内置支持。

将 jvmRoute="" 添加到每个 server.xml 的配置中。然后将<attribute name="UseJK">false</attribute>jboss-service.xml 更改为“true”。

整个设置在将 mod_proxy 与 JBoss一起使用中进行了描述。

于 2010-07-14T18:49:20.370 回答