我有两个运行 Jboss 7 的应用服务器和一个 Web 服务器
我已经使用 mod_jk 模块配置了负载平衡
下面是我的workers.properties
worker.list=loadbalancer,status,node1,node2
worker.node1.port=8009
worker.node1.host=ip1
worker.node1.type=ajp13
worker.node1.lbfactor=1
worker.node2.port=8009
worker.node2.host= ip2
worker.node2.type=ajp13
worker.node2.lbfactor=1
worker.loadbalancer.type=lb
worker.loadbalancer.balance_workers=node1,node2
worker.loadbalancer.sticky_session=0
worker.list=loadbalancer
worker.status.type=status
下面是我的 uriworkermap.properties
/jmx-console=loadbalancer
/jmx-console/*=loadbalancer
/web-console=loadbalancer
/web-console/*=loadbalancer
/App/*=loadbalancer
下面是我在 httpd.conf 文件中所做的条目
<Proxy balancer://App>
BalancerMember ajp://xx.xx.xx.1:8009/App route=node1
BalancerMember ajp://xx.xx.xx.2:8009/App route=node2
ProxySet stickysession=JSESSIONID
</Proxy>
ProxyPass /App balancer://App
ProxyPassReverse /App balancer://App
<Location /balancer-manager>
SetHandler balancer-manager
</Location>
下面是 mod-jk.conf 文件
LoadModule jk_module modules/mod_jk.so
JkWorkersFile conf/workers.properties
JkLogFile logs/mod_jk.log
JkLogLevel info
JkLogStampFormat "[%a %b %d %H:%M:%S %Y]"
JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories
JkRequestLogFormat "%w %V %T"
JkMount /App/* loadbalancer
JkMountFile conf/uriworkermap.properties
JkShmFile logs/jk.shm
<Location /jkstatus>
JkMount status
Order deny,allow
Deny from all
Allow from 127.0.0.1
</Location>
会话中有一些问题,我不明白该怎么做。
每当我启动 apache httpd 并点击 Web 服务器 URL 时,应用程序登录页面都会正确打开,并在两个应用程序服务器上进行适当的负载平衡。
场景 1:当我点击http://xx.xx.xx.xx/App/时,它会转到 App Server 1。但是当我输入用户名/密码并点击登录按钮时,它会转到应用程序服务器 2,而不是转到应用程序服务器 1。