Spring会话Redis与服务器端的粘性会话进行日志

时间:2018-01-24 14:29:36

标签: redis websphere load-balancing jedis sticky-session

您好我在我的Spring项目上配置了Redis以使用Spring Session,我使用的是Jedis 2.9.0并且运行良好。我遇到的问题是Websphere Server上的Sticky会话,我们有两个主服务器和每个10个克隆,正常的httpSession它使用cookie来再次处理该cookie到同一服务器的请求,很好,但是有了Spring会话它不起作用。

Spring创建名为“SESSION”的cookie,而Websphere的负载平衡不知道重定向请求的位置,因为会话不在JVM上,而是在Redis Cluster中进行了分配。

我需要(对于日志顺序porpuse)处理cookie“abc123”的每个请求到例如服务器1 clon 3,并且如果该应用程序的实例跟踪该cookie到另一个实例并保持该实例直到服务器再次关闭或用户注销......

在这里搜索和Spring Session文档,我找到了一些可能有用但我不知道它是如何工作的东西。

@Bean
public CookieSerializer cookieSerializer() {
    DefaultCookieSerializer serializer = new DefaultCookieSerializer();
    serializer.setCookieName("JSESSIONID"); 
    serializer.setCookiePath("/"); 
    serializer.setDomainNamePattern("^.+?\\.(\\w+\\.[a-z]+)$"); 
    serializer.setJvmRoute("123");
    return serializer;
}

属性Jvm Route为cookie添加一个后缀,以了解处理该cookie的JVM是什么,但我不知道它是如何工作的,我不幸找到有关它的例子或解释。

如果有人有答案或我可以使用的另一种解决方法,那就太棒了。

0 个答案:

没有答案