Tomcat7 redis session共享
2017-01-04 00:00
531 查看
摘要: 通过redis和SessionManager来实现多台Tomcat之间的session共享
这种方式是通过修改tomcat目录下的配置文件来实现对台tomcat之间的session共享,这里需要几个jar包,并讲他们添加到tomcat的lib目录下去,分别为:tomcat-redis-session-manager、jedis-2.7.2.jar、commons-pool2-2.8.0.jar
###1、下载tomcat-redis-session的源码并编译打包
这是一个歪果仁写的工具,目前只支持jdk1.7和tomcat7,作者比较忙,暂时不支持jdk8和tomcat8。
github地址为:https://github.com/jcoleman/tomcat-redis-session-manager
新建maven项目,并将src下的代码copy过去,配置一下pom.xml即可,很简单。
![](https://static.oschina.net/uploads/img/201701/04123314_iZHG.png)
编译后,将其打成jar包,放入tomcat的lib文件夹下。
###2、下载redis并启动(这里使用windows版本)
redis官方只支持linux版本,不支持windows,这里要使用github上的
Windows下Redis的安装使用
###3、配置tomcat\conf下的context.xml文件
多个tomcat的配置都一致,把配置都copy到对应的其他tomcat下;如果在一台机器上进行测试,记得对各个tomcat的端口进行修改
###4、把session.jsp页面丢到每个tomcat的ROOT目录下,session.jsp的内容如下:
###5、启动Tomcat,并访问session.jsp页面
![](https://static.oschina.net/uploads/img/201701/04130726_TN5d.png)
如上图所示,访问两台不同的tomcat,取得的sessionId是同一个,表示session共享成功。
这种方式是通过修改tomcat目录下的配置文件来实现对台tomcat之间的session共享,这里需要几个jar包,并讲他们添加到tomcat的lib目录下去,分别为:tomcat-redis-session-manager、jedis-2.7.2.jar、commons-pool2-2.8.0.jar
###1、下载tomcat-redis-session的源码并编译打包
这是一个歪果仁写的工具,目前只支持jdk1.7和tomcat7,作者比较忙,暂时不支持jdk8和tomcat8。
github地址为:https://github.com/jcoleman/tomcat-redis-session-manager
新建maven项目,并将src下的代码copy过去,配置一下pom.xml即可,很简单。
![](https://static.oschina.net/uploads/img/201701/04123314_iZHG.png)
编译后,将其打成jar包,放入tomcat的lib文件夹下。
###2、下载redis并启动(这里使用windows版本)
redis官方只支持linux版本,不支持windows,这里要使用github上的
Windows下Redis的安装使用
###3、配置tomcat\conf下的context.xml文件
多个tomcat的配置都一致,把配置都copy到对应的其他tomcat下;如果在一台机器上进行测试,记得对各个tomcat的端口进行修改
<?xml version='1.0' encoding='utf-8'?> <Context> <WatchedResource>WEB-INF/web.xml</WatchedResource> <!-- tomcat-redis-session共享配置 --> <Valve className="com.orangefunction.tomcat.redissessions.RedisSessionHandlerValve" /> <Manager className="com.orangefunction.tomcat.redissessions.RedisSessionManager" host="localhost" port="6379" database="0" maxInactiveInterval="60" /> </Context>
###4、把session.jsp页面丢到每个tomcat的ROOT目录下,session.jsp的内容如下:
SessionID:<%=session.getId()%> <BR> SessionIP:<%=request.getServerName()%> <BR> SessionPort:<%=request.getServerPort()%>
###5、启动Tomcat,并访问session.jsp页面
![](https://static.oschina.net/uploads/img/201701/04130726_TN5d.png)
如上图所示,访问两台不同的tomcat,取得的sessionId是同一个,表示session共享成功。
相关文章推荐
- 开启tomcat的apr模式,并利用redis做tomcat7的session的共享。
- 一起艳恶学习tomcat7与redis实现session共享
- Tomcat7基于Redis的Session共享
- Tomcat7基于Redis的Session共享实战二
- Tomcat7基于Redis的Session共享实战一
- Tomcat7基于Redis的Session共享实战一
- Tomcat7基于Redis的Session共享
- [转]Tomcat7基于Redis的Session共享
- tomcat7 redis session 共享
- Tomcat7基于Redis的Session共享
- 开启tomcat的apr模式,并利用redis做tomcat7的session的共享。
- Tomcat7基于Redis的Session共享
- tomcat7配合redis实现session共享
- 使用redis进行基于shiro的session集群共享
- Spring-Session+Redis实现session共享
- spring session + redis 实现web工程的session共享
- spring-session-data-redis实现session共享
- spring boot + redis 实现session共享
- spring boot与redis 实现session共享教程
- tomcat+redis+nginx session共享