Session共享问题演示
1. 在tomcat中创建项目myweb
2. 分别启动两个tomcat,查看sessionid值
Tomcat_main
Tomcat_back
Session共享问题解决
思想:将原来由每一个tomcat管理的session统一存储到redis中管理
1.下载nginx+tomcat集群+redis实现session共享工具包tomcat-redis-session-manager
https://github.com/jcoleman/tomcat-redis-session-manager/
其它依赖包
将以上四个包copy到tomcat的lib目录下(集群中的所有Tomcat都需要有这四个jar)
2.在tomcat/conf/context.xml
文件中添加配置(集群中的所有Tomcat都需要配置)
<Valve className="com.radiadesign.catalina.session.RedisSessionHandlerValve"/>
<Manager className="com.radiadesign.catalina.session.RedisSessionManager"
host="192.168.19.128"
port="6379"
database="0"
maxInactiveInterval="60"
password="admin"
/>
3.查看myweb工具中sessionid
Redis帮助我们存储了session
实战方案
- redisson-tomcat
https://github.com/redisson/redisson/tree/master/redisson-tomcat - 配置方式参考如下文档:
https://blog.51cto.com/ixdba/2470151