zoukankan      html  css  js  c++  java
  • Nginx+redis部署tomcat集群

    一、部署环境:

    两个tomcat实例部署在Ubuntu 14上,IP地址分别为192.168.1.110和192.168.1.111,Nginx和redis部署在windows7上,IP地址为192.168.1.100;

    二、部署redis:

    1、下载并解压redis;

    2、Cmd下进入redis目录,执行:redis-server.exe redis.conf来启动redis;

    三、部署Nginx:

    假设两台tomcat服务所在ip地址分别为192.168.1.110和192.168.1.111,修改在Nginx目录下的Nginx.conf文件如下:

    执行Nginx.exe程序,查看任务管理器,如果进程里面有nginx.exe的进程,则说明Nginx启动成功;

    四、部署tomcat:

    由于部署的两个tomcat实例是运行在不同的机器上,因此不需要修改端口号,如果是在一台机器上,则需要修改端口号,否则会启动不起来;

    1、修改context.xml文件:

    增加如下内容:

    <Valve className="com.orangefunction.tomcat.redissessions.RedisSessionHandlerValve" /> 

    <Manager className="com.orangefunction.tomcat.redissessions.RedisSessionManager" 

        host="192.168.1.100" 

        port="6379" 

        database="0" 

        maxInactiveInterval="60" />

    2、把下面的jar文件放到tomcat的lib目录下,然后启动tomcat:

    tomcat-redis-session-manager1.2.jar

    jedis-2.6.2.jar

    tomcat-juli.jar

    tomcat-juli-adapters.jar

    commons-pool2-2.0.jar

    五、测试:

    1、新建test.jsp测试文件:

    <%@ page contentType="text/html; charset=GBK" %>

    <%@ page import="java.util.*" %>

    <html><head><title>Cluster App Test</title></head>

    <body>

    <h1><font color="red">tomcat1</font></h1>

    Server Info:

    <%

    • out.println(request.getLocalAddr() + " : " + request.getLocalPort()+"<br>");%>

    <%

      out.println("<br> ID " + session.getId()+"<br>");

      // 如果有新的 Session 属性设置

      String dataName = request.getParameter("dataName");

      if (dataName != null && dataName.length() > 0) {

         String dataValue = request.getParameter("dataValue");

         session.setAttribute(dataName, dataValue);

      }

      out.println("<b>Session 列表</b><br>");

      System.out.println("============================");

      Enumeration e = session.getAttributeNames();

      while (e.hasMoreElements()) {

         String name = (String)e.nextElement();

         String value = session.getAttribute(name).toString();

         out.println( name + " = " + value+"<br>");

             System.out.println( name + " = " + value);

       }

    %>

      <form action="test2.jsp" method="POST">

        名称:<input type=text size=20 name="dataName">

         <br>

        值:<input type=text size=20 name="dataValue">

         <br>

        <input type=submit>

       </form>

    </body>

    </html>

    2、在浏览器中输入:http://192.168.1.100:81/test/test.jsp,多点击几次提交按钮,可以看到页面在两个tomcat之间切换,说明负载是成功的,并且sessionID总是相同的,也说明session是在redis上共享的;

    3、使用redis客户端连接上服务器,输入keys * 可以看到建立的session,输入get sessionID可以看到具体session的数据值;

  • 相关阅读:
    第一次用python 写的简单爬虫 记录在自己的博客
    【转】使用notepad运行python
    Android Tools&Cmd
    箴言
    无问西东
    Unity存储路径
    手机屏幕亮度设定
    Go Lang
    iOS .tbd
    Prime31
  • 原文地址:https://www.cnblogs.com/laoxia/p/7904712.html
Copyright © 2011-2022 走看看