采用开源组件memcached-session-manager(简称msm)来实现Session分布式存储。
1. 将msm对应的jar包放到tomcat的lib目录下,采用kryo进行序列化和反序列化session中的内容,因此也需要把kryo对应的jar包也拷贝到tomcat的lib目录下。
msm的地址:http://code.google.com/p/memcached-session-manager
kryo的地址:http://code.google.com/p/kryo/
2. 配置tomcat下的/conf/context.xml ,在<Context></Context>中添加SessionManager,如下:
<Context>
...
<Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager"
memcachedNodes="n1:host1.yourdomain.com:11211,n2:host2.yourdomain.com:11211"
failoverNodes="n1"
requestUriIgnorePattern=".*\.(ico|png|gif|jpg|css|js)$"
transcoderFactoryClass="de.javakaffee.web.msm.serializer.kryo.KryoTranscoderFactory"
/>
</Context>