tomcat使用memcache做session共享但是session经常会变化 15

使用nginx,tomcat和memcached进行session共享但是发现每次nginx转发到另外一个tomcat时session就变化了详细情况如下:nginx关键... 使用nginx,tomcat和memcached进行session共享但是发现每次nginx转发到另外一个tomcat时session就变化了详细情况如下:
nginx关键配置如下
upstream myServer1 {
server 192.168.75.128:8080 weight=5;
server 192.168.75.128:8081 weight=5;
}
确定nginx可以正常起作用

在一台服务器上开了两个tomcat端口分别是8080和8081session同步的配置如下使用memcached
<Context>
<Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager"
memcachedNodes="n1:192.168.83.128:11211"
requestUriIgnorePattern=".*\.(png|gif|jpg|css|js)$"
sticky="false"
sessionBackupAsync="false"
lockingMode="auto"
sessionBackupTimeout="100"
transcoderFactoryClass="de.javakaffee.web.msm.serializer.kryo.KryoTranscoderFactory"
/>
</Context>
两个tomcat的context.xml这段配置完全一样,可以正常启动,分别也可以正常访问,在每个的webapps的root下方了一个demo.jsp文件里面直接打印了当前转发到的端口和当前sessionid
<%
out.println(request.getLocalAddr() + " : " + request.getLocalPort()+"");%>
<%
out.println("ID " + session.getId()+"");
%>
打开浏览器访问http://192.168.75.128/demo.jsp的时候发现如下现象
有时候是Server Info: 192.168.75.128 : 8080 ID 25B6320C4F37F09421E8C406C1EC15C8
有时候又是Server Info: 192.168.75.128 : 8081 ID 9DCFDA824E1539A970F94AC1C58EEC81
有时候又是Server Info: 192.168.75.128 : 8080 ID 93751ACFAE84E4E99368D7A9D5423F88
而且一旦nginx一旦转发切换了tomcat这里的sessionid就会完全变了,不知道这是怎么回事,由这个现象可以看出来session同步完全没有起作用,可以确定两个tomcat的配置除了端口不一样,其他配置完全一样
希望大神们可以帮忙解决下
展开
 我来答
百度网友84f02e4
2015-07-15 · 超过19用户采纳过TA的回答
知道答主
回答量:57
采纳率:0%
帮助的人:32.1万
展开全部
看下是不是这个原因
tomcat在同一个机器上,需要设置jvmRoute,并且保证在同一台机器上的唯一,
如:<Engine name="Catalina" defaultHost="localhost" jvmRoute="tomcat1">

另外:memcached成功后的sessionid好像不是你那个样子的吧 memcached会加个后缀吧

This is (TOMCAT1), SESSION ID:AD71827B930D306D824BBEB276041E03-n1.tomcat2
追问

你说的这个我都配置过了,后来继续测试发现只有两个memcached和两个tomcat一一对应才可以同步成功,多了少了都不行,太奇葩了

但是这样太奇葩了,我多加一个tomcat又不行了,我停一个memcached也不行了,反正就是很鸡肋,不知道哪里出问题了

追答
我这边的环境是1个memcached和2个tomcat,
sessionid是类似这样的
AD71827B930D306D824BBEB276041E03-n1.tomcat2
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式