Tomcat8.5集群设置redissession共享

编程

开源项目: https://github.com/jcoleman/tomcat-redis-session-manager

推荐开源项目支持Tomcat789: https://github.com/ran-jit/tomcat-cluster-redis-session-manager

简单实践项目

Tomcat7&Tomcat8: https://blog.csdn.net/hua1586981/article/details/78132710

Tomcat8: https://blog.csdn.net/tuesdayma/article/details/81387862 

Tomcat8 redis session共享配置实例:

  • https://github.com/mzd123/session_manager
  • https://github.com/cc-chen/tomcat8.5-redis-session-manager

1.通过环境


本文档基于windows环境实现,测试通过环境:

Windows Server 2012 R2 Datacenter 64位
Tomcat-8.5.30-windows-x64
Redis-x64-3.0.504
tomcat-cluster-redis-session-manager2.0.4

2.安装redis

redis项目地址:https://github.com/MicrosoftArchive/redis/releases

Redis-x64-3.0.504.zip下载地址:win-3.0.504/Redis-x64-3.0.504.zip

安装完后,进入安装目录打开cmd命令行,输入redis-server.exe redis.windows.conf ,就可以启动redis

3.准备tomcat


准备两个tomcat,打开tomcat/conf/server.xml,把里面的三个端口号修改成不同的,不产生冲突就可以了。

4.下载tomcat-cluster-redis-session-manager


项目地址:https://github.com/ran-jit/tomcat-cluster-redis-session-manager/wiki

2.0.4版下载地址:https://github.com/ran-jit/tomcat-cluster-redis-session-manager/releases/download/2.0.4/tomcat-cluster-redis-session-manager.zip

 

5.配置插件


把下载的tomcat-cluster-redis-session-manager,解压后:

5.1放置jar包
把下载的jar文件(jedis.jar、 commons-pool2.jar、 commons-logging.jar)放到tomcat/lib/下

 

5.2添加系统变量
添加系统变量catalina.base,其值为TOMCAT_LOCATION

 

5.3放置redis-data-cache.properties
把redis-data-cache.properties放到tomcat/conf/下,可以按自己需求修改redis-data-cache.properties

 

5.4修改context.xml
在tomcat/conf/context.xml中,增加以下内容

 

<Valve className="tomcat.request.session.redis.SessionHandlerValve" />

      <Manager className="tomcat.request.session.redis.SessionManager" />

 

5.5修改web.xml
    修改tomcat/conf/web.xml文件中的<session-config>节点,如下面所示

<session-timeout>60<session-timeout>

6.验证

在两个的tomcat的tomcatapache-tomcat-8.5.30webappsROOT目录下放入如下的jsp文件,

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>

<!DOCTYPE html>

<html>

<head>

<title>session</title>

</head>

<body>

  <%String s = session.getId(); //获取session ID号  %>

  <%=s %>

  <%

         session.setAttribute("clj1", "clj20150527");

  %>

</body>

</html>

然后启动两个tomcat服务,分别进入两个tomcat的jsp测试页面,看到两个sessioin一样就成功了。
 

以上是 Tomcat8.5集群设置redissession共享 的全部内容, 来源链接: utcz.com/z/511802.html

回到顶部