使用Spring Session和Redis处理分布式Session跨域共享问题

作者 : 开心源码 本文共602个字,预计阅读时间需要2分钟 发布时间: 2022-05-12 共146人阅读

前言

对于分布式使用Nginx+Tomcat实现负载均衡,最常用的均衡算法有IP_Hash、轮训、根据权重、随机等。不论对于哪一种负载均衡算法,因为Nginx对不同的请求分发到某一个Tomcat,Tomcat在运行的时候分别是不同的容器里,因而会出现session不同步或者者丢失的问题。

实际上实现Session共享的方案很多,其中一种常用的就是使用Tomcat、Jetty等服务器提供的Session共享功能,将Session的内容统一存储在一个数据库(如MySQL)或者缓存(如Redis)中。

在以前写的一篇文章中:

使用Redis存储Nginx+Tomcat负载均衡集群的Session:http://blog.csdn.net/xlgen157387/article/details/52024139

这一篇文章中已经学习了一下,如何使用 tomcat-redis-session-manager 开源项目处理分布式session跨域的问题,他的主要思想是利用Servlet容器提供的插件功能,自己设置HttpSession的创立和管理策略,并通过配置的方式替换掉默认的策略。tomcat-redis-session-manager重写了Tomcat的org.apache.catalina.session.ManagerBase里边的具体写的操作, 将tomcat的session存储位置指向了Redis:

使用Spring Session和Redis处理分布式Session跨域共享问题

说明
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » 使用Spring Session和Redis处理分布式Session跨域共享问题

发表回复