您的位置:首页 > 数据库 > Redis

tomcat集群使用redis实现session共享

lengchuan 2016-08-17 00:00 127 查看
摘要: tomcat集群使用redis实现session共享

tomcat集群使用redis实现session共享

相关文章:

Apache安装以及配置:http://my.oschina.net/lengchuan/blog/731412

Apache+tomcat集群搭建以及负载均衡实现:http://my.oschina.net/lengchuan/blog/731414

获取 tomcat-redis-session-manager

获取tomcat-redis-session-manager-master源码

因为需要搭建gradle环境,如果不想搭建,可以用我已经生成的jar:https://github.com/Lengchuan/tomcat-redis-session-manager。 生成的jar在jars文件夹中。

如果要自己生成需要的jar,github地址:https://github.com/jcoleman/tomcat-redis-session-manager

git clone https://github.com/jcoleman/tomcat-redis-session-manager.git cd  tomcat-redis-session-manager/


gradle

我们需要搭建gradle环境。

编译输出需要的jar包

首先我们需要修改build.gradle这个文件:注释掉47-49行以及56-58行,然后添加一个我们自己的task用来生成jar包。

task jars(type: Copy) {
from configurations.runtime
into 'jars'
}


编译输出jar包。

gradle build -x test jars

会在当前目录下生成一个jars文件夹,我们需要的jar包就在里面。tomcat-redis-session-manager-2.0.0.jar在build/libs。

commons-pool2-2.2.jar

jedis-2.5.2.jar

tomcat-redis-session-manager-2.0.0.jar

拷贝jar需要的到tomcat的lib目录下。

配置tomcat

编辑context.xml,配置tomcat-redis-session-manager-master作为session的管理器。找到< Context >增加下面的配置:

<Valve className="com.orangefunction.tomcat.redissessions.RedisSessionHandlerValve" />
<Manager className="com.orangefunction.tomcat.redissessions.RedisSessionManager"
host="localhost"
port="6379"
database="0"
maxInactiveInterval="60" />

更多的配置项:

<Valve className="com.orangefunction.tomcat.redissessions.RedisSessionHandlerValve" />
<Manager className="com.orangefunction.tomcat.redissessions.RedisSessionManager"
host="localhost" <!-- optional: defaults to "localhost" -->
port="6379" <!-- optional: defaults to "6379" -->
database="0" <!-- optional: defaults to "0" -->
maxInactiveInterval="60" <!-- optional: defaults to "60" (in seconds) -->
sessionPersistPolicies="PERSIST_POLICY_1,PERSIST_POLICY_2,.." <!-- optional -->
sentinelMaster="SentinelMasterName" <!-- optional -->
sentinels="sentinel-host-1:port,sentinel-host-2:port,.." <!-- optional --> />


测试

启动tomcat以及redis,这时候session已经可以共享了。
标签:  Tomcat Redis