【发布时间】:2016-08-14 21:55:42
【问题描述】:
我有 2 个 Tomcat 在使用 sticky_sessions=false 进行负载平衡。 所以我需要跨Tomcats的“会话持久性”。 Tomcat 文档说有 3 种方法:
- Tomcat 集群
- 持久性管理器 + 共享目录
- 持久化管理器 + SQL 存储
集群不适合我,因为在它编写的文档中,配置它的 sticky_sessions 应该是 true。
我尝试了 Persistance Manager,但它似乎也不起作用,因为它仅在超时后才会保留会话,因此使用 sticky_session=false 它不起作用。
Persistance Manager 可以立即持久化会话吗?
我阅读了有关 memcached-session-manager 的信息,但它看起来像是 3d 派对解决方案,所以我不敢使用它。它是唯一的解决方案吗?
【问题讨论】:
-
使用粘性会话有什么问题?
-
因为如果我们已经实现了一切来支持真正的负载平衡,为什么我们应该使用sticky_sessions 并且总是针对同一个会话访问 1 个服务器?
-
此外,使用 sticky_session=true 我们不需要任何集群或 session_replications,因为它只会在 Tomcat 停止或 Tomcat 失败时提供一些优势。
标签: tomcat load-balancing sticky-session