一、前言
本文主要测试redis实现session共享的实现方式,不讨论如何让nginx参与实现负载均衡等。
二、环境配置
本测试在Window下进行
name
version
port
Tomcat1
7.0.61
127.0.0.1:8081
Tomcat2
7.0.61
127.0.0.1:8082
Redis
2.4.5
127.0.0.1:6379
jdk
1.7
-
-
三、安装tomcat-redis-session-manager插件
1.源码下载:
https://github.com/jcoleman/tomcat-redis-session-manager
最新版源码对jdk版本有要求,必须是JDk1.7,否则编译通不过。
之前我用的是Tomcat7与JDK1.6的组合,结果一直运行不了,抛出如下异常。
java.lang.UnsupportedClassVersionError: com/orangefunction/tomcat/redissessions/RedisSessionHandlerValve : Unsupported major.minor version 51.0
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631)
at java.lang.ClassLoader.defineClass(ClassLoader.java:615)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
at java.net.URLClassLoader.access$000(URLClassLoader.java:58)
at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
如果你想要兼容版本较低的Tomcat或者jdk,可以尝试下载其他分支源码,其他分支我没有进行测试,不知道兼容情况如何。
2.或者Jar包