【问题标题】:Amazon Load Balancer sticky sessions configuration for jsessionid in URLURL 中 jsessionid 的 Amazon 负载均衡器粘性会话配置
【发布时间】:2015-06-24 00:15:05
【问题描述】:

我目前正在尝试为 Tomcat 工作人员设置 Amazon 负载均衡器,但我遇到了一个问题。

我正在使用粘性会话,cookie JSESSIONID 可用于大多数请求。但是有些请求在 URL 中有会话信息,像这样:

http://myserver.com/contextPath/someAction;jsessionid=BA6853C23F795BD5EEDAEA996E601BB8

而且它不起作用(并且请求被转发给了错误的工作人员)。

AWS 负载均衡器是否支持 URL 中的jsessionid?如果没有,也许您知道一些解决方法?

使用 Apache + mod_proxy_balancer,例如,我可以这样定义它:

ProxyPassMatch /.* balancer://mycluster stickysession=JSESSIONID|jsessionid 

【问题讨论】:

  • 您有没有找到解决方法?不幸的是,我所有的 url 重写都因为粘性会话功能而过时。

标签: tomcat amazon-web-services load-balancing jsessionid


【解决方案1】:

AWS 的弹性负载均衡器不支持基于 URL 的会话粘性。

请务必检查您是否设置了 ELB 的粘性政策。

此外,ELB 的粘性实际上并不考虑任何 cookie 的价值,除了它自己的称为“AWSELB”。当您配置基于 cookie 的粘性策略时,您实际上是在配置粘性的 lifetime 以遵循指定 cookie 的 lifetime - 但实际的服务器分配由AWSELB cookie。

【讨论】:

  • 是的...我还联系了 AWS 支持,他们“建议”我重写我的应用程序 :)(非常有帮助)。感谢您解释 AWSELB cookie 细节 - 我想知道为什么 LB 总是添加它自己的 cookie,即使我将粘性策略设置为“应用程序管理”。
猜你喜欢
  • 2021-09-06
  • 1970-01-01
  • 2017-10-22
  • 2013-04-18
  • 1970-01-01
  • 1970-01-01
  • 2018-09-09
  • 2014-09-21
  • 2018-03-20
相关资源
最近更新 更多