运行相同应用程序的两个tomcat实例是否可以为两个不同的用户创建相同的sessionId?

时间:2016-10-07 10:59:46

标签: java tomcat

我正在为应用程序创建共享会话实现。在这样做时,我想首先了解tomcat(带有嵌入式tomcat的spring boot)为经过身份验证的用户创建Sessions的方式。

我发现org.apache.catalina.util.StandardSessionIdGenerator#generateSessionId方法创建了sessionid,它使用安全随机数生成器和jvmRoute(我从未在tomcat)中设置任何位置。

为了讨论这个问题,如果我们考虑jvmRoute="",那么这意味着如果我在lb后面运行两个tomcat实例会有sessionid的冲突,但是默认会话亲和性被启用我们将不会有任何问题。

但是一旦我们删除了会话亲和关系,我们就会面临两个用户可以拥有相同会话ID的问题。

有没有人面对这个问题而且已经解决了?

0 个答案:

没有答案