zoukankan      html  css  js  c++  java
  • tomcat基于cookie的session共享

    首先,安装 nginx + nginx_upstream_jvm_route

    shell $> svn checkout http://nginx-upstream-jvm-route.googlecode.com/svn/trunk/ 

    下载jvm-route补丁

    然后,安装nginx时,需要加载jvm-route模块

    shell $> ./configure --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --add-module=/root/trunk

    完成后,修改nginx配置文件:

    upstream backend {
        server x.x.x.x:8080 srun_id=a;
       server x.x.x.x:8080 srun_id=b;
       jvm_route $cookie_JSESSIONID|sessionid reverse;
    }

    接着,在tomcat服务器上,修改tomcat配置文件server.xml:

    <Engine name="Catalina" defaultHost="localhost" jvmRoute="a">

    将不同的tomcat中的jvmRoute的值,改为nginx中对应的srun_id的值;

    此时,已完成session共享的配置。

    如何测试?

    在tomcat的webapp/ROOT目录下面建立文件,输入要测试的index.jsp文件,内容如 下:

    <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
    <%
    %>
    <html>
    <head>
        </head>
          <body>
           88
           <!--server1 这里为 88 -->
            <br />
           <%out.print(request.getSession()) ;%>
           <!--输出session-->
            <br />
            <%out.println(request.getHeader("Cookie")); %>
          <!--输出Cookie-->
          </body>
    </html>
    两个tomcat一样只需要修改红色的部分。
    打开浏览器输入网址查看,然后再打开另外的浏览器查看,看看是否固定在一个服务器上。
  • 相关阅读:
    线程
    ACM/OJ输入输出Tips
    Maven---pom.xml详解
    通过chrome分析知乎的登录过程学习cookie原理
    Javaweb日志系统
    SpingMVC+AJAX+jquery表单数据交互
    SpringMVC Controller 失效 404错误 IEDA
    【JavaSE】Properties类
    freemaker判断对象非空
    移植openssh时could not load host key: /etc/ssh/ssh_host_rsa_key 无法启动ssh的一个解决办法
  • 原文地址:https://www.cnblogs.com/agostop/p/2623339.html
Copyright © 2011-2022 走看看