關於負載均衡,致使須要實現Session共享。大概有兩個解決辦法:java
https://github.com/jcoleman/tomcat-redis-session-managergit
<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 --> />
另外兩個包比較容易找到。下面本身構建(以前網上找到都會報錯)github
git clone git@github.com:jcoleman/tomcat-redis-session-manager.git
# vim ~/tomcat-redis-session-manager/build.gradle # 增長 49, 註釋57-59 47 signing { 48 sign configurations.archives 49 required = false 50 } 51 52 uploadArchives { 53 repositories { 54 mavenDeployer { 55 beforeDeployment { MavenDeployment deployment -> signing.signPom(deployment) } 56 57 //repository(url: "https://oss.sonatype.org/service/local/staging/deploy/maven2/") { 58 // authentication(userName: sonatypeUsername, password: sonatypePassword) 59 //} 60 //repository(url: "https://oss.sonatype.org/content/repositories/snapshots") { 61 // authentication(userName: sonatypeUsername, password: sonatypePassword) 62 //}
gradle build --stacktrace
build ├── libs │ ├── tomcat-redis-session-manager-2.0.0-javadoc.jar │ ├── tomcat-redis-session-manager-2.0.0-sources.jar │ └── tomcat-redis-session-manager-2.0.0.jar