https://github.com/jcoleman/tomcat-redis-session-manager
切换选择不同版本 附件是java1.6 tomcat7
https://github.com/izerui/tomcat-redis-session-manager tomca7 java1.7
安装好redis 2.8版本以上
grandle构建 ../gradle-2.1/bin/gradle build
build.gradle
apply plugin: 'java'
version = '1.1'
repositories {
mavenCentral()
}
dependencies {
compile group: 'org.apache.tomcat', name: 'tomcat-catalina', version: '7.0.67'
compile group: 'redis.clients', name: 'jedis', version: '2.5.2'
compile group: 'org.apache.commons', name: 'commons-pool2', version: '2.2'
// testCompile group: 'junit', name: 'junit', version: '4.+'
}
tomcat conf/context.xml
<Valve className="com.radiadesign.catalina.session.RedisSessionHandlerValve" /> 路径根据
tomcat-redis-session jar包文件路径修改
<Manager className="com.radiadesign.catalina.session.RedisSessionManager"
host="192.168.1.5"
port="6379"
database="0"
maxInactiveInterval="60" />
tomca7 java1.7
<Valve className="com.orangefunction.tomcat.redissessions.RedisSessionHandlerValve" />
<Manager className="com.orangefunction.tomcat.redissessions.RedisSessionManager"
host="localhost"
port="6379"
database="0"
maxInactiveInterval="60"
sessionPersistPolicies="PERSIST_POLICY_1,PERSIST_POLICY_2,.." session保存策略,可选项
sentinelMaster="SentinelMasterName" redis集群主节点名称
sentinels="sentinel-host-1:port,sentinel-host-2:port,.."/> redis集群列表配置
java.lang.IllegalArgumentException: setAttribute: Non-serializable attribute registerLoginUser
session需要序列化