以前配置过给予多播的session共享方案,这回再配置一个redis共享session的。

先小小的炫耀一下:

相信大家要做Tomcat+Redis+session配置,遇到的头号麻烦就是编译的tomcat-redis-session-manager,真是苦了我们这群伸手党,作者James Coleman同学帮人也不帮到底,直接提供三个jar下载不好吗?

我本着助人为乐的精神,借花献佛,提供三个jar下载地址:https://files.cnblogs.com/files/xiandedanteng/tomcat7-redis-session-manager.rar ,而我是从 http://pan.baidu.com/s/1qWXgNTy 下载的,在此向作者表示敬意;美中不足是 ,这位作者提供另一个的https://jingyan.baidu.com/article/ac6a9a5e10415f2b653eace8.html 最底下的http://pan.baidu.com/s/1dELCFVb 中,对apache-tomcat-8.5.50是不好用的,三个jar放进去,设定context.xml,一启动tomcat8就报异常,然后tomcat都起不来,真是遗憾(发现作者的jar是对tomcat8.0版本的,并不适合8.5.50版本。2020年1月5日14点25分)。

我的环境:

操作系统:Win10

Tomcat:apache-tomcat-7.0.99-windows-x64

Redis:Redis-x64-3.2.100

都是win版的,大家可以熟悉了再去linux下面去配,道理都是一样的。

具体配置开始:

1.安装Redis,请参考另一篇文章:https://www.cnblogs.com/xiandedanteng/p/12147921.html

2.下载配置Tomcat

从Tomcat官网将apache-tomcat-7.0.99下载下来后,解压,拷贝到本地的两个目录:

然后,分别编辑两个tomcat的startup.bat,将以下两行文字插到文件头部:

set JAVA_HOME="C:\Java8"
set CATALINA_HOME="C:\Install\tomcat7rediscluster\tomcat01"

第一句是告诉tomcat javahome在哪里,这不需要修改,第二句则是自己所在的物理地址,是需要根据目录变动的。

之后,需要修改tomcat02的server.xml文件,将三个端口改掉。

<Server port="8006" shutdown="SHUTDOWN">
...
<Connector port="8088" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
...
<Connector port="8019" protocol="AJP/1.3" redirectPort="8443" />

这三个端口,我是从8005,8080,8009修改过来的。

这一步是为了两个tomcat端口互相不干扰,之后可以启动两个tongcat测试一下。

3.拷贝redis相关jar包到两个tomcat的lib目录:

https://files.cnblogs.com/files/xiandedanteng/tomcat7-redis-session-manager.rar 下载之,解压之,拷贝之。

4.拷贝myweb.war到两个tomcat的webapps目录

下载地址:https://www.cnblogs.com/xiandedanteng/p/12143132.html

这个web应用是用来看sessionid的。

5.设置两个tomcat的context.xml,我的设置如下:

Tomcat1:

<?xml version='1.0' encoding='utf-8'?>

<Context>

    <!-- Default set of monitored resources -->
<WatchedResource>WEB-INF/web.xml</WatchedResource> <Valve className="com.orangefunction.tomcat.redissessions.RedisSessionHandlerValve" />
<Manager className="com.orangefunction.tomcat.redissessions.RedisSessionManager"
host="192.168.0.106"
port="6379"
database="0"
password="ufo"
maxInactiveInterval="60" /> </Context>

Tomcat2:

<?xml version='1.0' encoding='utf-8'?>

<Context>

    <!-- Default set of monitored resources -->
<WatchedResource>WEB-INF/web.xml</WatchedResource> <Valve className="com.orangefunction.tomcat.redissessions.RedisSessionHandlerValve" />
<Manager className="com.orangefunction.tomcat.redissessions.RedisSessionManager"
host="192.168.0.106"
port="6379"
database="0"
password="ufo"
maxInactiveInterval="60" /> </Context>

两个文件是一摸一样,其中host是自己的IP,port是redis启动端口,password是你在redis.windows.conf里设置的密码,别搞错了。

之后打开cmd窗口,分别到两个tomcat的bin目录,执行startup.bat以启动两个tomcat,,到localhost:8080/myweb 和 localhost:8088/myweb 看看session id是否一致就行了。如果你也看到两个session id一致,那么祝贺你。

写到这里,忽然想到人家写好配过的,我照做一遍,是否值得得意呢?相对于人家先行者,我无疑是跟随着,但相对于昨天的我,今天知道怎么配的我无疑是进步的,从此我又打开了一扇门,其后是更广阔的天地,这难道不是一件值得小得意的事情吗?你觉得呢?

--END-- 2020年1月4日 09点54分

Tomcat7.0.99集群使用Redis共享session方案的更多相关文章

  1. Nginx+tomcat集群使用redis共享session

    一 :nginx负载均衡 当Tomcat当做独立的Servlet容器来运行时,可看做是能运行Java Servlet的独立Web服务器. 此外 Tomcat还可以作为其他Web服务器进程内或者进程外的 ...

  2. nginx+tomcat实现集群,redis实现session共享,软连接实现文件共享:http://blog.csdn.net/hua1586981/article/details/78132710

    转载 2017年02月08日 16:52:41 730 相信很多人都听过nginx,这个小巧的东西慢慢地在吞食apache和IIS的份额.那究竟它有什么作用呢?可能很多人未必了解. 说到反向代理,可能 ...

  3. apache2.2.25+tomcat7.0.47集群方案

    因为公司项目在线人数的增加,随着现在硬件成本越来越低,大多数的生产环境内存大多都已经达到 16G,尤其最新的阿里云,客户的机器都是配置超高的java主机,但是Java的运行环境,内存使用有限 ,这样就 ...

  4. 使用Nginx搭建Tomcat9集群,Redis实现Session共享

    使用Nginx搭建Tomcat9集群,Redis实现Session共享 1.tomcat准备 首先准备两个tomcat9 ,修改配置文件server.xml 如果在多个服务器上分别启动tomcat 则 ...

  5. (转)apache2.2.x+tomcat7.0.x集群+…

    apache http server下载地址 http://httpd.apache.org/download.cgi#apache22 这里下载的是httpd-2.2.21-win32-x86-op ...

  6. 一篇文章让你深透理解cookie和session,附带分布式WEB系统redis共享session方案

    cookie和session有什么区别?这是一个很基础的知识点,大家可能都知道一个大概:cookie是存在客户端的,session是存储在服务端,cookie和session用来验证识别用户的登录状态 ...

  7. Tomcat 7集群基于redis的session共享设置

    经过测试之后,发现是tomcat中redis相关jar包问题,替换jar包后A产品运行正常. tomcat/lib目录下将commons-pool2-2.1.jar.jedis-2.1.0.jar.t ...

  8. linux下实现redis共享session的tomcat集群

    为了实现主域名与子域名的下不同的产品间一次登录,到处访问的效果,因此采用rediss实现tomcat的集群效果.基于redis能够异步讲缓存内容固化到磁盘上,从而当服务器意外重启后,仍然能够让sess ...

  9. 配置redis 4.0.11 集群

    配置redis 4.0.11 集群 准备redis 软件和redis配置文件 启动Redis服务 /data/soft/redis/src/redis-check-aof --fix /log/red ...

随机推荐

  1. java_Object类、日期时间类、System类、包装类

    Object类 java.lang.Object 类是所有类的父类.它描述的所有方法子类都可以使用.在对象实例化的时候,最终找的父类就是Object. 如果一个类没有特别指定父类, 那么默认则继承自O ...

  2. three.js 制作机房(下)

    这一篇书接上文,说一说剩下的一些模块. 1. 机箱存储占用比率 机箱存储占用比其实很简单,就是在机箱上新加一个组即可,然后根据比率值来设置颜色,这个颜色我们去HSL(0.4,0.8,0.5) ~ HS ...

  3. windows10永久激活工具 新版win10激活工具(绝对有效的永久激活工具)

    来看这篇文章的,都用过KMS了吧?对!KMS是批量激活的,激活时间是一年,如果给女神激活,此法首选呀!!!但是帮基友激活,过了一年又来找自己,作为程序员的你,脸上是不是有点挂不住然后又不想花钱去买某宝 ...

  4. Mybatis中<![cdata[ ]]>

    1.<![cdata[ ]]>介绍 <![cdata[ 内容 ]]>是一种xml语法,在CDATA标记中的信息被解析器原封不动地传给应用程序,并且不解析该段信息中的任何控制标记 ...

  5. myBatis源码解析-配置文件解析(6)

    前言 本来打算此次写一篇关于SqlSession的解析,但发现SqlSession涉及的知识太多.所以先结合mybatis配置文件(我们项目中常写的如mybatisConfig.xml),来分析下my ...

  6. SpringMVC+Spring+mybatis+maven+搭建多模块框架前后端分离开发框架的完整demo,拿走不谢。——猿实战02

            猿实战是一个原创系列文章,通过实战的方式,采用前后端分离的技术结合SpringMVC Spring Mybatis,手把手教你撸一个完整的电商系统,跟着教程走下来,变身猿人找到工作不是 ...

  7. Fiddler显示指定host请求,以及过滤无用的css,js

    第一步 右侧窗口点击filters 第二步 点击Use Fiters 第三步 第一个选项不动 no zone filter ,第二个选项选择 show only following hosts 第四步 ...

  8. Redis高级项目实战,都0202年了,还不会Redis?

    导读 大家都听过1万小时定律,可事实真的是这样吗?做了1万小时的CRUD,不还只会CRUD吗,这年头不适当的更新自身下技术栈,出门和别人聊天吹牛的时候,都没拿不出手,(⊙o⊙)…Redis没入门的童鞋 ...

  9. Linux系统环境下MySQL数据库源代码的安装

    Linux系统环境下MySQL数据库源代码的安装 基本环境:CentOS Linux release 7.8.2003 (Core).MySQL5.6 一.      安装环境准备 若要在Linux系 ...

  10. MySQL数据库修改字段名、字段类型、字段长度

    1.MySQL数据库中,修改字段SQL如下: alter table AppVersion change version versionCode varchar() DEFAULT NULL COMM ...