使用memcached为tomcat共享session
session 的序列化方案官方推荐的有 4 种:
1. java serialization
2. msm-kryo-serializer
3. msm-javolution-serializer
4. msm-xstream-serializer
其中性能最好的数Kryo,我们使用kryo来做session
首先在tomcat的lib目录中放置以下jar包
注意,请勿使用memcached-2.5.jar,用spymemcached来替换这个,不然会在第二个tomcat获取session是出现错误的。
接着,在tomcat中修改配置文件conf/context.xml
在content中追加以下节点
<Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager" memcachedNodes="node1:10.4.23.218:11211" requestUriIgnorePattern=".*/.(png|gif|jpg|css|js)$" sticky="false" storageKeyPrefix="context" lockingMode="auto" sessionBackupAsync="true" sessionBackupTimeout="100" copyCollectionsForSerialization="false" transcoderFactoryClass="de.javakaffee.web.msm.serializer.kryo.KryoTranscoderFactory"/>
其中 memcachedNodes表示memcached节点,可以用多个。requestUriIgnorePattern用来忽略哪些url是不需要session的。
sticky用于多台memcached是否黏性session。lockingMode用来表示锁定session的处理方法。
可以在以下地方找到对应jar包:http://repo1.maven.org/maven2/de/javakaffee/msm/
iasuna 》原创,转载请保留文章出处。
本文链接:使用memcached为tomcat共享session http://www.iasuna.com/post-16.html
版权声明:若无特殊注明,本文皆为《
正文到此结束
发表吐槽
你肿么看?
既然没有吐槽,那就赶紧抢沙发吧!