tomcat memcached session共享

来源:互联网 发布:少儿英语软件推荐 编辑:程序博客网 时间:2024/05/29 07:36

本机使用win7

提前说明:不建议使用memcached共享session。原因是memcached坑爹的回收机制,存在用户突然掉线的风险。以及占用内存过大。
以下为由于各种历史问题导致需要使用memcached 共享的,记录。
ps:项目记得序列化
1、下载:http://memcached.org/
2、下载tomcat
3、开始:
1)、sc create "Memcached_11211" start= auto binPath= "C:\Program Files\memcached\memcached.exe -d runservice -m 1024 -p 11211 -l 127.0.0.1" DisplayName= "Memcached_11211"(默认端口11211)
sc start "Memcached_11211" //启动
sc stop "Memcached_11211" //停止
sc delete "Memcached_11211" //卸载该服务
参数直说:-m表示使用内存兆;-p表示使用端口
2)、配置tomcat下conf/context.xml
memcached支持的序列化参数
   1.javolution序列化tomcat配置<Context>与</Context>中间
   conf/context.xml添加
<Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager"
   memcachedNodes="n1:127.0.0.1:11211 n2:127.0.0.1:11311"   
   lockingMode="auto"
   sticky="false" 
   requestUriIgnorePattern= ".*\.(png|gif|jpg|css|js)$"    
   sessionBackupAsync= "false"   
   sessionBackupTimeout= "100"  
   copyCollectionsForSerialization="true"   
   transcoderFactoryClass="de.javakaffee.web.msm.serializer.javolution.JavolutionTranscoderFactory" />




   lib增加jar包
   msm-javolution-serializer-cglib-1.3.0.jar
   msm-javolution-serializer-jodatime-1.3.0.jar
   spymemcached-2.10.3.jar
   javolution-5.4.3.1.jar
   msm-javolution-serializer-1.7.0.jar
   memcached-session-manager-1.7.0.jar
   memcached-session-manager-tc7-1.7.0.jar
2、xstream序列化tomcat配置
   conf/context.xml添加
   <Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager"
   memcachedNodes="n1:127.0.0.1:11211 n2:127.0.0.1:11311"   
   lockingMode="auto"
   sticky="false" 
   requestUriIgnorePattern= ".*\.(png|gif|jpg|css|js)$"    
   sessionBackupAsync= "false"   
   sessionBackupTimeout= "100"
   transcoderFactoryClass="de.javakaffee.web.msm.serializer.xstream.XStreamTranscoderFactory" />




   lib增加jar包
   xmlpull-1.1.3.1.jar
   xpp3_min-1.1.4c.jar
   xstream-1.4.6.jar
   msm-xstream-serializer-1.7.0.jar
   spymemcached-2.10.3.jar
   memcached-session-manager-1.7.0.jar
   memcached-session-manager-tc7-1.7.0.jar
3、flexjson序列化tomcat配置
   conf/context.xml添加
   <Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager"
   memcachedNodes="n1:127.0.0.1:11211 n2:127.0.0.1:11311"     
   lockingMode="auto"
   sticky="false" 
   requestUriIgnorePattern= ".*\.(png|gif|jpg|css|js)$"    
   sessionBackupAsync= "false"   
   sessionBackupTimeout= "100"      
   transcoderFactoryClass="de.javakaffee.web.msm.serializer.json.JSONTranscoderFactory" />




   lib增加jar包
   flexjson-3.1.jar
   msm-flexjson-serializer-1.7.0.jar
   spymemcached-2.10.3.jar
   memcached-session-manager-1.7.0.jar
   memcached-session-manager-tc7-1.7.0.jar
4、kryo序列化tomcat配置
   conf/context.xml添加
   <Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager"
   memcachedNodes="n1:127.0.0.1:11211 n2:127.0.0.1:11311"   
   lockingMode="auto"
   sticky="false" 
   requestUriIgnorePattern= ".*\.(png|gif|jpg|css|js)$"    
   sessionBackupAsync= "false"   
   sessionBackupTimeout= "100"    
   copyCollectionsForSerialization="true"   
   transcoderFactoryClass="de.javakaffee.web.msm.serializer.kryo.KryoTranscoderFactory" />




   lib增加jar包
   kryo-1.04.jar
   minlog-1.2.jar
   asm-3.2.jar
   reflectasm-1.01.jar
   kryo-serializers-0.11.jar
   msm-kryo-serializer-1.7.0.jar
   spymemcached-2.10.3.jar
   memcached-session-manager-1.7.0.jar
   memcached-session-manager-tc7-1.7.0.jar
资源等下次上传。

推荐使用redis或者直接去session化(虽然,我们自己也没去掉,有各种理由:什么旧项目修改工程大、原始项目已经足够使用无需扩大什么的)

内容写的不全下次补充

原创粉丝点击