达到的效果
当客户端访问Nginx服务器时,Nginx负载均衡会自动将请求转发到TomcatA或TomcatB服务器,以减轻Tomcat压力,从而达到Tomcat集群化部署,为了使各Tomcat之间共享同一个Session,将采用Redis缓存服务来集中管理Session存储。
下载开源项目
tomcat-redis-session-manager
tomcat-redis-session-manager最低支持tomcat8及以上,对于tomcat7需要改动源码并重新打包,初学者可能不怎么熟练。
运行环境
windows 7
JDK 1.7.0_79
apache-tomcat-7.0.91
redis 3.2.100
修改调整
- tomat 在conf/context.xml的Context下追加以下代码片段
<Valve className="com.orangefunction.tomcat.redissessions.RedisSessionHandlerValve" />
<Manager className="com.orangefunction.tomcat.redissessions.RedisSessionManager" host="localhost" port="6379"database="0"password="2020foobared"/>
其中host就是redis所在服务器,port是redis的端口,database(reids默认16个数据库)使用的数据库编号,password redis连接密码。
session共享所需jar
tomcat7+redis共享session包
由于才编写博客,还对编辑器不怎么熟练,不知道Markdown怎么直接上传附件,故只能使用csdn的上传文件进行jar上传。