tomcat+nginx+memcached+windows session不能共享

问题描述

tomcat+nginx+memcached+windows session不能共享

困扰我两天了。

使用tomcat7+nginx,实现负载均衡,并且测试通过。
但是session不能够共享,项目登录之后,进行其他操作时候提示登录,说明nginx转发请求到其他tomcat时候,丢失了session。

加入memcached,想要实现session共享。
按照网上的说明配置,启动,但是session并不能实现共享。

下载的jar,拷贝到tomcat/lib下面。

memcached下载,安装,启动,tomcat1和tomcat2启动都正常,始终没有报错,但是session就是不能共享。

tomcat/config/context.xml配置如下(tomcat1和tomcat2都相同)

 <Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager"
        memcachedNodes="n1:127.0.0.1:11211"
        sticky="false"
        lockingMode="auto"
        sessionBackupAsync="false"
        sessionBackupTimeout="1000"
        transcoderFactoryClass="de.javakaffee.web.msm.serializer.kryo.KryoTranscoderFactory"
        />

在项目中新建demo.jsp,观察session变化(也是网上的例子)

 <%@ page contentType="text/html;charset=UTF-8" %>
<%@ page import="java.util.*" %>
<html><head><title>Cluster Test</title></head>
<body>
<%
  //HttpSession session=request.getSession(true);
  System.out.println(session.getId());
  out.println("port:" + request.getLocalPort()  );
  out.println("<br>SESSION ID:" + session.getId()+"<br>");
  // 如果有新的请求,则添加session属性
  String name=request.getParameter("name");
  if (name != null &&name.length() >0) {
     String value=request.getParameter("value");
     session.setAttribute(name, value);
 }
    out.print("<b>Session List:</b>");
    Enumeration<String>names=session.getAttributeNames();
    while (names.hasMoreElements()) {
        String sname=names.nextElement();
        String value=session.getAttribute(sname).toString();
        out.println( sname + "=" + value+"<br>");
        System.out.println( sname + "=" + value);
  }

%>
</body>
</html>

测试结果

做过负载均衡的牛人,请帮我指点一下把。

解决方案

Nginx+Tomcat+Memcached集群Session共享(windows)
Windows系统中配置Nginx+Tomcat+Memcached集群和Session共享
memcached 共享tomcat的session

解决方案二:

你参考这个呢

解决方案三:

java.net.ConnectionException:connect refused: no further infomation. 错误就是还没有连接上,

时间: 2024-12-30 18:22:24

tomcat+nginx+memcached+windows session不能共享的相关文章

NGINX + TOMCAT7 + MEMCACHED 实现SESSION 共享

原文地址: http://my.oschina.net/u/1791256/blog/283064 TOMCAT7.0+ NGINX + MEMCACHED + memcached-session-manager 实现SESSION共享 http://blog.csdn.net/nerissa/article/details/18961361  ; //参考博客 http://pan.baidu.com/s/1pJlZ0mB    //相关包下载,含lib所需的jar包 环境:centOS 6.

Nginx+Tomcat7+Memcached实现tomcat集群和session共享问题

问题描述 由于最近项目要升级进行负载均衡,网上看了很多文章,确定还是用Nginx+Tomcat+Memcached实现tomcat集群和session共享这种方式来实现.经过网上一些配置参考Demo版本成功了.session也共享成功.在满心欢喜的情况下,还以为这么快就搞定了.事实不既然,我把我们web项目部署进去,结果出现很多问题.想必这些问题过来人肯定遇到过.问题如下:1.2个tomcat7单独启动,项目部署进去,都可以登录进去并运行.这是我的配置Memcached在tomcat7/conf

nginx+tomcat+memcached实现session共享,tomcat7可以正常运行

问题描述 nginx+tomcat+memcached实现session共享,tomcat7可以正常运行 我用nginx+tomcat+memcached实现session共享,tomcat7可以正常运行,但是tomcat8就报Caused by: java.lang.NoSuchMethodError: org.apache.catalina.core.ApplicationSessionCookieConfig.getSessionCookieName(Lorg/apache/catalin

Nginx和Tomcat负载均衡实现session共享(转)

    以前的项目使用Nginx作为反向代理实现了多个Tomcat的负载均衡,为了实现多个Tomcat之间的session共享,使用了开源的Memcached-Session-Manager框架.     此框架的优势:          1.支持Tomcat6和Tomcat7           2.操作粘性或不黏性Session           3.没有单点故障           4.Tomcat的故障转移           5.Memcached的故障转移           6.

tomcat集群memcached解决session共享 之 多个memcached节点之间如何同步session

问题描述 tomcat集群memcached解决session共享 之 多个memcached节点之间如何同步session tomcat集群memcached解决session共享 之 多个memcached节点之间如何同步session 问题简单描述: 多个tomcat集群,并且有多个memcached节点做session共享, 那么如何保证每一个tomcat从不同的memcached节点取session的一致性? 是不是每一个tomcat的session都会自动写入所有的memcached

关于 tomcat 集群中 session 共享的三种方法

前两种均需要使用 memcached 或 redis 存储 session ,最后一种使用 terracotta 服务器共享.  建议使用 redis ,不仅仅因为它可以将缓存的内容持久化,还因为它支持的单个对象比较大,而且数据类型丰富,  不只是缓存 session ,还可以做其他用途,一举几得啊.  1.使用 filter 方法存储  这种方法比较推荐,因为它的服务器使用范围比较多,不仅限于 tomcat ,而且实现的原理比较简单容易控制.  可以使用 memcached-session-f

weblogic可以使用memcached实现session共享吗?

问题描述 weblogic可以使用memcached实现session共享吗? 目前我的环境是nginx+weblogic双域实现负载均衡和高可用,但出现session共享问题,目前想用memcached实现,但网络上的资料大都是tomcat的,现在想请教一下weblogic的怎么做呢?请前辈们赐教 解决方案 http://blog.csdn.net/a__java___a/article/details/8738932 解决方案二: http://www.verydemo.com/demo_c

tomcat利用memcache解决session共享

1.说明 主要是利用memcached-session-manager开源tomcat插件改变tomcat原始的session存储机制,将session的存储放到分布式缓存memcache中,从而实现对session的共享 2.安装包下载 memcache-session-manager在tomcat6上所需jar包 这是将msm官方的jar打了一个zip包方便下载使用 memcache-session-manager官方下载地址 memcache下载见memcache安装 3.环境描述 系统:

apache2.2+tomcat负载均衡在SSH2项目中session无法共享!!!!!!

问题描述 apache2.2+tomcat负载均衡在SSH2项目中session无法共享!!!!!! 使用apache2.2和三个tomcat实例在同一台机器配置负载均衡成功,基本软件:apache.2.225Tomcat8.0.20Tomcat-connectors-1.2.40使用如下Jsp页面时显示session要以复制且sessionId相同,但是加载实际SSH2实际项目,则发现session丢失且每次都创建新的session请有类似配置经验或解决方案的同仁不吝赐教!<% HttpSes