我在名为tomcat1,tomcat2,tomcat3的3个tomcats中部署了我的项目。那些配置了tomcat集群。 如果所有的tomcats都启动并运行,Session Affinity工作正常。 如果Tomcat1关闭且它包含会话,如果客户端请求该会话,那些会话详细信息将通过tomcat2传递。 但是,下一个请求转到tomcat3.So,我丢失了一些数据。 所以,这里Session Affinity不起作用。 在上一个Tomcat1关闭的情况下,所有请求都只发送到tomcat1。 为什么在tomcat1停机时会发生这种情况?
这是我的workers.properties文件
worker.list=loadbal
worker.loadbal.type=lb
worker.loadbal.balance_workers=jvm1,jvm2,jvm3,jvm4
#worker.stat.type=status
#worker.loadbal.sticky_session=True
#worker.loadbal.sticky_session_force=True
#Define worker corresponding to a tomcat server node
worker.jvm1.port=8010
worker.jvm1.host=xxx.xxx.x.xxx
worker.jvm1.type=ajp13
worker.jvm1.jvm_route=jvm1
#Define worker corresponding to a tomcat server node
worker.jvm2.port=8011
worker.jvm2.host=xxx.xxx.x.103
worker.jvm2.type=ajp13
worker.jvm2.jvm_route=jvm2
worker.jvm3.port=8012
worker.jvm3.host=xxx.xxx.x.73
worker.jvm3.type=ajp13
#worker.jvm3.jvm_route=jvm3
worker.jvm4.port=8014
worker.jvm4.host=xxx.xxx.x.103
worker.jvm4.type=ajp13
#worker.jvm4.jvm_route=jvm4
尝试使用任何创建会话的应用程序。
提前致谢。
答案 0 :(得分:0)
这是通过使用worker.redirect = routeid。
实现的如果你在worker.properties文件中提到它,它可以正常工作。