http--tomcat--memcached配置

Posted huxl1

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了http--tomcat--memcached配置相关的知识,希望对你有一定的参考价值。

两个tomcat节点:172.16.100.7(tomcatA.magedu.com),172.16.100.8(tomcatB.magedu.com)

两个memcached节点:172.16.100.9, 172.16.100.10

一个负载均衡节点:172.16.100.6

Clients-->172.16.100.6-->(tomcatA, tomcatB)

与tomcat结合,将会话存在memcached中

1 安装memcached 

yum  install   memcached  -y

启动memcached服务

2 配置tomcat

  1 安装tomcat 和jdk

  2  将对应的类文件复制到tomcat类文件中

下载如下jar文件至各tomcat节点的tomcat安装目录下的lib目录中,其中的${version}要换成你所需要的版本号,tc${6,7,8}要换成与tomcat版本相同的版本号。

memcached-session-manager-${version}.jar   2.1.1

memcached-session-manager-tc${6,7,8}-${version}.jar   tc7-2.1.1

 spymemcached-${version}.jar     2.1.1

msm-javolution-serializer-${version}.jar    2.1.1

 javolution-${version}.jar

放在/usr/share/java/tomcat/

 

memcached-session-manager项目地址,

http://code.google.com/p/memcached-session-manager/,

https://github.com/magro/memcached-session-manager

 

分别在两个tomcat上的某host上定义一个用于测试的context容器,并在其中创建一个会话管理器,如下所示:

 

  <Context path="/test" docBase="/usr/local/tomcat/webapps/test" reloadable="true">

        <Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager"

               memcachedNodes="n1:172.16.100.9:11211,n2:172.16.100.10:11211"

                failoverNodes="n1"

                requestUriIgnorePattern=".*.(ico|png|gif|jpg|css|js)$"

         transcoderFactoryClass="de.javakaffee.web.msm.serializer.javolution.JavolutionTranscoderFactory"

              />

      </Context>

分别为两个提供测试页面

tomcatA:

# mkdir -pv /usr/local/tomcat/webapps/test/WEB-INF/{classes,lib}

# vim /usr/local/tomcat/webapps/test/index.jsp

<%@ page language="java" %>

<html>

  <head><title>TomcatA</title></head>

  <body>

    <h1><font color="red">TomcatA.magedu.com</font></h1>

    <table align="centre" border="1">

      <tr>

        <td>Session ID</td>

    <% session.setAttribute("magedu.com","magedu.com"); %>

        <td><%= session.getId() %></td>

      </tr>

      <tr>

        <td>Created on</td>

        <td><%= session.getCreationTime() %></td>

     </tr>

    </table>

  </body>

</html>

tomcatB:

# mkdir -pv /usr/local/tomcat/webapps/test/WEB-INF/{classes,lib}

# vim /usr/local/tomcat/webapps/test/index.jsp、

<%@ page language="java" %>

<html>

  <head><title>TomcatB</title></head>

  <body>

    <h1><font color="blue">TomcatB.magedu.com</font></h1>

    <table align="centre" border="1">

      <tr>

        <td>Session ID</td>

    <% session.setAttribute("magedu.com","magedu.com"); %>

        <td><%= session.getId() %></td>

      </tr>

      <tr>

        <td>Created on</td>

        <td><%= session.getCreationTime() %></td>

     </tr>

    </table>

  </body>

</html>

在172.16.100.6上配置反向代理的负载均衡内容,类似如下所示:  http

在配置文件中添加  vim  ./conf.d/ilinux.conf

<Proxy balancer://tomcat>

    BalancerMember  http://172.16.100.7:8080 loadfactor=1

    BalancerMember  http://172.16.100.8:8080 loadfactor=1

    ProxySet  lbmethod=byrequests

</Proxy>

 

ProxyVia Off

ProxyRequests Off

ProxyPass / balancer://tomcat/

ProxyPassReverse / balancer://tomcat/

<Proxy *>

          Order Allow,Deny

          Allow From all

</Proxy>

 

<Location />

          Order Allow,Deny

    Allow From all

</Location>

启动http服务

访问:测试结果,在浏览器中访问http://172.16.100.6/test,结果如下所示,其session ID在负载均衡环境中保持不变。

 

以上是关于http--tomcat--memcached配置的主要内容,如果未能解决你的问题,请参考以下文章

(4.19)SQL server 2008一些常见配置之一(基本配置,权限配置远程访问配置和内存配置。)

Tomcat卷五---Web 应用配置,管理配置和JVM配置

SpringBoot:配置文件的作用配置文件的格式properties配置文件yml配置文件

IDEA的常用配置,maven配置,git配置操作

SpringCloud Nacos配置管理 -- 统一配置管理(添加配置微服务配置拉取)

Android Gradle 插件LintOptions 配置 ⑦ ( explainIssues 属性配置 | htmlOutput 属性配置 | htmlReport 属性配置 )