Apache 负载平衡Tomcat服务器,同时保持单个会话ID

Apache 负载平衡Tomcat服务器,同时保持单个会话ID,apache,tomcat,load-balancing,mod-jk,Apache,Tomcat,Load Balancing,Mod Jk,我希望能够使用Apache和mod_jk对两个Tomcat服务器进行负载平衡,这两个服务器相互广播会话数据 我已经设置了负载平衡器,它工作得很好,但是,我目前不得不使用sticky_会话来实现这一点。我希望能够将sticky_sessions设置为false,并且能够只使用一个会话ID发送到任何一个Tomcat服务器 是否有任何特定的配置需要使这成为可能,或者甚至是可能的 这是我的worker.properties文件: 我也在每个tomcat实例中设置了jvmRoutes,如我所说的“work

我希望能够使用Apache和mod_jk对两个Tomcat服务器进行负载平衡,这两个服务器相互广播会话数据

我已经设置了负载平衡器,它工作得很好,但是,我目前不得不使用sticky_会话来实现这一点。我希望能够将sticky_sessions设置为false,并且能够只使用一个会话ID发送到任何一个Tomcat服务器

是否有任何特定的配置需要使这成为可能,或者甚至是可能的

这是我的worker.properties文件:

我也在每个tomcat实例中设置了jvmRoutes,如我所说的“worker1”和“worker2”,将sticky_会话设置为“1”这是可行的,但我不得不在会话期间使用一个tomcat,这是我不想要的


我需要能够使用单个会话ID访问任何Tomcat,任何帮助都将不胜感激。

您是否已为会话复制启用了DeltaManager?是的,我在server.xml中的集群参数下启用了。您只需设置sticky_Session=0重新启动apache并将该标志添加到web.xml中。会话id将以Tomcat节点名作为后缀。我已经添加了标志,并且从服务器获得了正确的通信量,我想要的是两个Tomcat在会话id末尾都不附加Tomcat节点名的情况下工作,有没有一种方法可以让Apache直接路由到任何Tomcat,而会话ID的末尾没有节点名?我猜没有,但是为什么不在需要的地方拆分“.node”后缀呢?
worker.list=jkstatus, jkmanager, LoadBalancer

worker.jkstatus.type=status
worker.jkmanager.type=status
worker.LoadBalancer.type=lb

worker.worker1.type=ajp13
worker.worker1.host=TOMCAT-1-IP
worker.worker1.port=8009

worker.worker2.type=ajp13
worker.worker2.host=TOMCAT-2-IP
worker.worker2.port=8009

worker.LoadBalancer.balance_workers=worker2,worker1
worker.LoadBalancer.sticky_session=0