tomcat集群session同步之memcache方案

session同步方案可以采用tomcat+memcach session复制方案(基于反向代理轮询机制)
部署步骤:
1. 安装memcache
2. 停止tomcat
3. 在tomcat/lib目录放置下面的包
spymemcached-2.7.3.jar
memcached-session-manager-tc7-1.6.2.jar
memcached-session-manager-1.6.2.jar
4. 修改tomcat/conf/server.xml文件
在Context元素中增加:
<ManagerclassName="de.javakaffee.web.msm.MemcachedBackupSessionManager"
       memcachedNodes="n1:192.168.1.2:58728"
       sticky="false"
       sessionBackupAsync="false"
      requestUriIgnorePattern=".*\.(ico|png|gif|jpg|css|js)$"
      transcoderFactoryClass="de.javakaffee.web.msm.serializer.kryo.KryoTranscoderFactory"
/>
其中memcachedNodes里面应该填写能访问的memcache实际ip
4.  在WEB应用的maven配置中增加
<dependency>
   <groupId>de.javakaffee.msm</groupId>
   <artifactId>msm-kryo-serializer</artifactId>
   <version>1.6.2</version>
</dependency>
相当于增加了如下几个jar:
   annotations-1.3.9.jar
    jsr305-1.3.9.jar
    kryo-1.04.jar
   kryo-serializers-0.9.jar
    minlog-1.2.jar
   msm-kryo-serializer-1.6.2.jar
   reflectasm-1.01.jar
5. 重启tomcat
参见:
https://code.google.com/p/memcached-session-manager/wiki/SetupAndConfiguration#Add_custom_serializers_to_your_webapp_(optional)

此方案是基于nginx轮询tomcat方式,如果是基于iphash等其他方式,可以修改相关配置,以获取最佳性能

猜你喜欢

转载自blog.csdn.net/qq_38976693/article/details/80193111