Apache:按会话进行负载平衡

时间:2018-07-12 09:09:27

标签: apache tomcat server config mod-jk

我有两个后端服务器(因此有2个工作服务器),我按会话在它们之间进行负载平衡。但是有一个问题:一旦我加载了应用程序,它就会发送多个请求,并且负载均衡器选择了第一个工作程序,并且向第二个工作程序发送了一个请求(以进行检查?),因此jk-status始终会将1个会话放入第一个工作程序,第二个工作程序,当我在不同的浏览器(不同的会话)上加载应用程序时,负载均衡器将始终选择第一个工作程序,因为两个工作程序中的会话数相同。该怎么办?

我使用Apache 2.2,Tomcat 8.5.x和mod_jk 1.2.40

workers.properties配置:

worker.list=jkstatus,router
worker.jkstatus.type=status
worker.router.type=lb
worker.router.balance_workers=worker1,worker2
worker.router.method=S
worker.router.sticky_session=true
worker.template.type=ajp13
worker.template.lbfactor=1
worker.template.socket_keepalive=true
worker.template.recovery_options=7
worker.worker1.reference=worker.template
worker.worker1.host=mysite.com
worker.worker1.port=8009
worker.worker1.redirect=worker2
worker.worker2.reference=worker.template
worker.worker2.host=mysecondsite.com
worker.worker2.port=8009
worker.worker2.redirect=worker1

1 个答案:

答案 0 :(得分:0)

在某种情况下,我不得不从worker.properties切换到httpd.conf并使用Proxy and Balancers(还更新了Apache和mod_jk),一切正常。