应用集群(4)-会话策略

Session是通过Servlet容器创建和管理的,像Tomcat/Jetty都是保存在内存中的,但是我们把应用搭建成分布式的集群,然后利用Nginx做负载均衡,那么来自同一用户的Http请求将有可能被分发到多个不同的应用中。so,问题来了,在集群环境下如何保证不同的应用能够共享同一份session数据呢?

答:把session数据保存到内存以外的一个统一地方,例如Redis上

我们产品的会话策略有很大改动,6代之前的产品,采用的是weblogic容器,集群环境下,session存放在weblogic中,由weblogic集群进行同步session的工作。

7代产品采用了tomcat作为中间件,并且采用了redis缓存工具,将session放在redis上,不仅解决了集群的问题,速度还非常快。后来经过进一步改进,当前会话管理采用了无状态的jwt签名的方式,将jwt的密钥放缓存。

 

Supongo que te gusta

Origin blog.csdn.net/weixin_38316944/article/details/114396608
Recomendado
Clasificación