tomcat-session-redis配置(session共享)

tomcat-session-redis配置

Session持久机制三种实现方法:

1、session绑定:始终将来自同一个源IP的请求定向至同一个RS;没有容错能力;有损均衡效果(sh)

2、session复制:在RS之间同步session,每个RS拥有集群中的所有的session;对规模集群不适用;必须RS支持(lblcr)

3、session服务器:利用单独部署的服务器来统一管理集群中的session;(单有单点故障)

nginx-tomcat-redis(session共享)配置实例:

环境:两台机器:

10.15.51.141:tomcatA

10.15.51.222:tomcatB、nginx、redis

步骤:

1. 所需要的包,放入到tomcat目录的lib目录下(附件中)

commons-pool-1.6.jar

jedis-2.1.0.jar

tomcat-redis-session-manager-1.2-tomcat-7.jar

2. 配置tomcat目录下的conf/context.xml,加入以下内容:

<Valve className="com.radiadesign.catalina.session.RedisSessionHandlerValve" />
        <Manager className="com.radiadesign.catalina.session.RedisSessionManager"
                host="10.15.51.222"       #redis地址
                port="6379"                #redis端口
                database="0"
                maxInactiveInterval="60"/> #session失效时间(秒)

3. nginx配置:

http{
    upstream aaa {
    server 10.15.51.222:8080;
    server 10.15.51.141:8080;
    }
server {
    server_name aaa.test.com;
    listen 80;
    location {
access_log  logs/ning_access.txt;
        proxy_pass http://aaa;
        }
    }
}

4、在两台tomcat中添加以下内容方便测试

A提供测试:

# mkdir -pv test/WEB-INF/{classes,lib}
# vim test/index.jsp
<%@ page language="java" %>
<html>
  <head><title>TomcatA</title></head>
  <body>
    <h1><font color="blue">Tomcata.10.15.51.222.com</font></h1>
    <table align="centre" border="1">
      <tr>
        <td>Session ID</td>
    <% session.setAttribute("ning.com","ning.com"); %>
        <td><%= session.getId() %></td>
      </tr>
      <tr>
        <td>Created on</td>
        <td><%= session.getCreationTime() %></td>
     </tr>
    </table>
  </body>
</html>

B提供测试:

# mkdir -pv test/WEB-INF/{classes,lib}
# vim test/index.jsp
<%@ page language="java" %>
<html>
  <head><title>TomcatB</title></head>
  <body>
    <h1><font color="blue">TomcatB.10.15.51.141.com</font></h1>
    <table align="centre" border="1">
      <tr>
        <td>Session ID</td>
    <% session.setAttribute("ning.com","ning.com"); %>
        <td><%= session.getId() %></td>
      </tr>
      <tr>
        <td>Created on</td>
        <td><%= session.getCreationTime() %></td>
     </tr>
    </table>
  </body>
</html>

访问:

http://IP:80/test 或http://IP/test

时间: 2024-10-04 11:29:25

tomcat-session-redis配置(session共享)的相关文章

Tomcat 使用Redis存储Session

Tomcat Redis Session Github 地址. 下载 commons-pool2-2.2.jar,jedis-2.5.2.jar,tomcat-redis-session-manager-2.0.0.jar 这三个包,将其放到 tomcat 目录下的lib目录下. 修改tomcat 的conf目录下的 context.xml 文件. 在Context中插入下面的代码. <Valve className="com.orangefunction.tomcat.redissess

tomcat下redis实现session共享

1.分布式部署的情况下实现session共享.下面是我测试环境及配置. 2.Redis 版本 3.0.6         tomcat版本为:7.0     jdk版本:1.7 3.所需要的jar包及版本 commons-pool-1.3.jar jedis-2.0.0.jar tomcat-redis-session-manager-1.2-tomcat-7-java-7.jar 4.Reids安装配置 Redis使用主备配置(在一台机器上安装,因此需要配置不同的端口号).安装目录如下: re

tomcat+nginx+redis实现session共享

1. 所需要的包,放入到tomcat目录的lib目录下(附件内) 2. 配置tomcat目录下的conf/context.xml,加入以下内容: <Valve className="com.radiadesign.catalina.session.RedisSessionHandlerValve" /> <Manager className="com.radiadesign.catalina.session.RedisSessionManager"

tomcat利用redis实现session共享

1.下载最新的Jedis(一个Redis 的Java客户端),Tomcat Redis Session Manager 和 Apache Commons Pool,放在tomcat/lib目录 下载地址 Redis:http://redis.io/ JRedis: https://github.com/xetorthio/jedis Tomcat Redis Session Manager :https://github.com/jcoleman/tomcat-redis-session-man

spring boot + session+redis解决session共享问题

自己没有亲自试过,不过看了下这个例子感觉靠谱,以后做了测试,在加以说明.

tomcat+nginx+redis实现均衡负载、session共享(二)

今天我们接着说上次还没完成session共享的部分,还没看过上一篇的朋友可以先看下上次内容,http://www.cnblogs.com/zhrxidian/p/5432886.html. 1.redis简介及下载安装 作为这次的主角,相信大家对redis应该都一定印象,redis是一款开源的高性能key-value数据库,拥有丰富的键值储存类型,并提供多种语言的API. 与一般数据库不同,redis是使用内存作为主存,而使用硬盘来实现数据持久化,而且redis是周期性的将数据写到硬盘上.这就意

【转载】tomcat+nginx+redis实现均衡负载、session共享(一)

http://www.cnblogs.com/zhrxidian/p/5432886.html 在项目运营时,我们都会遇到一个问题,项目需要更新时,我们可能需先暂时关闭下服务器来更新.但这可能会出现一些状况: 1.用户还在操作,被强迫终止了(我们可以看日志等没人操作的时候更新,但总可能会有万一) 2.不知道的用户可能会想网站是不是被攻击了,降低了对网站的信任程度,从而导致失去部分潜在客户,这点尤其对金融互联网公司不利. 在查了一些资料后,决定采用Tomcat + Nginx + Redis来实现

【转载】tomcat+nginx+redis实现均衡负载、session共享(二)

今天我们接着说上次还没完成session共享的部分,还没看过上一篇的朋友可以先看下上次内容,http://www.cnblogs.com/zhrxidian/p/5432886.html. 1.redis简介及下载安装 作为这次的主角,相信大家对redis应该都一定印象,redis是一款开源的高性能key-value数据库,拥有丰富的键值储存类型,并提供多种语言的API. 与一般数据库不同,redis是使用内存作为主存,而使用硬盘来实现数据持久化,而且redis是周期性的将数据写到硬盘上.这就意

(转)tomcat+nginx+redis实现均衡负载、session共享(二)

1.redis简介及下载安装 作为这次的主角,相信大家对redis应该都一定印象,redis是一款开源的高性能key-value数据库,拥有丰富的键值储存类型,并提供多种语言的API. 与一般数据库不同,redis是使用内存作为主存,而使用硬盘来实现数据持久化,而且redis是周期性的将数据写到硬盘上.这就意味着一旦我们服务器出现断电.重启之类的情况,我们很可能会出现数据丢失的情况,所以不建议使用redis来存放关键的数据.当然,也正因为redis读写数据都使用内存,所以它的速度是非常快的,很适

tomcat使用redis存储共享session

在tomcat集群环境下实现session共享有几种解决方案,这里介绍一种简单的方案. 使用redis对session进行存储,配置比较简单.web服务器是tomcat6 1.下载jar包: commons-pool-1.6.jar jedis-2.1.0.jar tomcat-redis-session-manager-tomcat6.jar 2.修改tomcat/conf目录中的content.xml配置文件 添加以下内容 <Valve className="com.radiadesi