linux-tomcat-memcached-session共享

上一篇介绍了redis集群对tomcat,session的共享,这一篇介绍memcached集群对tomcat,session的共享

一、安装,启动memcached

网上资料自己搜索,这里就不做讲解,我在本机安装了2个memcached,分别启动:

/usr/local/bin/memcached -d -m 1024 -p 11211 -u root -l 127.0.0.1

/usr/memcached/local/bin/memcached -d -m 1024 -p 11212 -u root -l 127.0.0.1

二、导入jar包:

每个tomcat的lib目录都要放置如下包

#序列化包

kryo-1.03.jar

kryo-serializers-0.10.jar

msm-kryo-serializer-1.6.4.jar

#memcached必须包和与tomcat交互包

memcached-session-manager-1.5.1.jar

memcached-session-manager-tc7-1.5.1.jar(注意tc7 这里要下载与你的tomcat对应的jar包)

spymemcached-2.7.3.jar


三、配置tomcat-context.xml

在context.xml的<Context></Context> 下配置加入--如果之前配置redis,记得注释掉

有两种配置方式,黏性策略与非黏性策略,对应的nginx使用的策略进行配置即可

<!-- 利用memcached 进行非粘性的session共享
failoverNodes="n1" 黏性策略下,指定对应memcached,
sticky="false" 非黏性-在非黏性策略下使用,
sessionBackupAsync="false"非粘性下使用,保证session一致  memcached 关闭异步复制session,进行同步复制
lockingMode="auto" 锁模式 非黏性策略使用,保证session一致
-->
<Manager
className="de.javakaffee.web.msm.MemcachedBackupSessionManager"
memcachedNodes="n1:127.0.0.1:11211,n2:127.0.0.1:11212"
sticky="false"
sessionBackupAsync="false"
lockingMode="auto"
requestUriIgnorePattern=".*\.(ico|png|gif|jpg|css|js)$"
transcoderFactoryClass="de.javakaffee.web.msm.serializer.kryo.KryoTranscoderFactory"/>

配置完毕。分别启动tomcat,在游览器进行访问:

注意其中的n1,n2,这个代表访问的memcached是哪一个。与我们context.xml,配置的n1.n2一致。

现在我们关闭n1,继续访问:


可以看到,现在都使用n2的缓存session.而tomcat会一直访问memcached:


重新启动n1,它将继续加入到集群当中



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值