为了实现主域名与子域名的下不同的产品间一次登录,到处访问的效果,因此采用rediss实现tomcat的集群效果。基于redis能够异步讲缓存内容固化到磁盘上,从而当服务器意外重启后,仍然能够让session还未失效的用户重新登录,这正是相对于memcached的优点,因此采用redis作为session共享存储工具。

  • redis安装

参考:linux下安装redis并自启动

  • 发布tomcat-redis-session-manager.jar

从 https://github.com/jcoleman/tomcat-redis-session-manager下载tomcat-redis-session-manager的最新源代码,并使用gradle发布成jar格式的类包。

参考:使用gradle构建java项目

  • 给TOMCAT_HOME/lib上传类包

采用redis的tomcat集群需要jedis-2.6.2.jar,commons-pool2-2.3.jar类包支持。将以下两个类包上传到tomcat安装目录下的lib目录中

1、jedis下载地址

http://grepcode.com/project/repo1.maven.org/maven2/redis.clients/jedis/

2、commons-pool下载地址

http://commons.apache.org/proper/commons-pool/download_pool.cgi

3、tomcat-juli-adapters.jar,tomcat-juli.jar

根据tomcat版本下载相应的扩展插件类包

http://tomcat.apache.org/download-70.cgi

  • 配置tomcat

在tomcat_HOME/conf/context.xml中添加以下配置信息

  1. <Manager className="com.orangefunction.tomcat.redissessions.RedisSessionManager"
  2. host="redis的ip地址"
  3. port="redis的port"
  4. database="0"
  5. maxInactiveInterval="60"
  6. />
  • 验证使用redis共享session集群是否成功

1、tomcat集群共享session

可实现tomcat集群session共享,可进行水平扩展tomcat。终止一台tomcat工作,web应用仍然可以继续访问

2、主域名与二级域名实现共享session

实现主域名和二级域名共享session,实现单点登录,实现前面的功能还需要规定sessionCookieName必须统一为主域名。
                     实现单点登录的不同应用中与session的相关javabean,必须能够进行序列化和反序列化。

  • sticky_sessionsticky_session_force设置对session的影响

通过redis实现session共享方式实现集群,sessionid是固定的,不会受到sticky_sessionsticky_session_force设置值得印象。jk负载到不同的tomcat都不会导致sessionid变化。

只有通过组播通讯实现的tomcat集群,当设置sticky_sessionsticky_session_force设置后会产生sessionid的变化。

linux下实现redis共享session的tomcat集群的更多相关文章

  1. Spring Boot+redis存储session,满足集群部署、分布式系统的session共享

    本文讲述spring-boot工程中使用spring-session机制进行安全认证,并且通过redis存储session,满足集群部署.分布式系统的session共享. 原文链接:https://w ...

  2. 基于redis实现tomcat8的tomcat集群的session持久化实现(tomcat-redis-session-manager二次开发)

    前言: 本项目是基于jcoleman的tomcat-redis-session-manager二次开发版本 1.修改了小部分实现逻辑 2.去除对juni.jar包的依赖 3.去除无效代码和老版本tom ...

  3. 利用Redis发布订阅完成tomcat集群下的消息通知

    以下为个人想法,如果有说的不对的地方请各位大佬见谅! 这是博主的第一篇博客,可能排版以及一些描述有不合理的地方还请勿喷,希望大家尽可能的多给我这样的新人一些鼓励让我能在写博客的道路上走下去. 进入正题 ...

  4. Centos7下ELK+Redis日志分析平台的集群环境部署记录

    之前的文档介绍了ELK架构的基础知识,日志集中分析系统的实施方案:- ELK+Redis- ELK+Filebeat - ELK+Filebeat+Redis- ELK+Filebeat+Kafka+ ...

  5. linux下nacos的1.1.3版本集群部署

    windows单机版参见0.9.0.RELEASE版本的spring cloud alibaba nacos实例 ,linux集群版我们还是用上次下载的nacos压缩包,通过rz -y上传到wlf用户 ...

  6. linux下安装 zookeeper-3.4.9并搭建集群环境

    本文主要记录作者在实践过程中实现在centos7环境下安装zookeeper并搭建集群的详细步骤,关于zookeeper本文将不做详细介绍,安装步骤详情如下: 前提准备:3台linux服务器(因为zo ...

  7. linux下部署Elasticsearch6.8.1版本的集群

    一.准备工作 安装包的下载:elasticsearch-6.8.1.tar.gz 集群服务器:A     B 一.单节点elasticsearch的安装部署 a.进入es的下载目录home:解压tar ...

  8. linux+apache+mod_Jk+tomcat实现tomcat集群

    最近一段时间一直在研究实现apache + jk_mod + tomcat实现负载均衡,起初负载均衡算是配置蛮顺利的,但是到了配置tomcat集群时所有配置都没有问题,但是tomcat日志中一直提示没 ...

  9. Linux+Apache+Tomcat集群配置

    参考: http://blog.csdn.net/bluishglc/article/details/6867358# http://andashu.blog.51cto.com/8673810/13 ...

随机推荐

  1. 【GDOI 2011 DAY2 T3】零什么的最讨厌了 (快速求阶乘、中国剩余定理)

    问题描述: 林记在做数学习题的时候,经常遇到这种情况:苦思冥想了很久终于把问题解出来,结果发现答案是0,久而久之林记在得到习题答案是0的时候就没有了做出一道难题的成就感.于是林记决定:以后出题,答案一 ...

  2. 使用HttpURLConnection向服务器发送post和get请求

    一.使用HttpURLConnection向服务器发送get请求 1.向服务器发送get请求 @Test publicvoid sendSms() throws Exception{ String m ...

  3. Javascript 取小数点后面N位

    用Javascript取float型小数点后两位,例22.127456取成22.13,如何做? 1. 最笨的办法....... [我就怎么干的.........] 1function get() 2{ ...

  4. C#子线程更新UI控件的方法总结

    http://blog.csdn.net/jqncc/article/details/16342121 在winform C/S程序中经常会在子线程中更新控件的情况,桌面程序UI线程是主线程,当试图从 ...

  5. 【Xamarin 挖墙脚系列:IOS 开发界面的3种方式】

    原文:[Xamarin 挖墙脚系列:IOS 开发界面的3种方式] xcode6进行三种基本的界面布局的方法,分别是手写UI,xib和storyboard.手写UI是最早进行UI界面布局的方法,优点是灵 ...

  6. oracle报错ORA-01507

    SHUTDOWN IMMEDIATE; STARTUP NOMOUNT; CONTROL1.CTL文件复制到CONTROL2.CTL; ALTER SYSTEM SET CONTROL_FILES=' ...

  7. Docker在云环境中的应用实践初探:优势、局限性与效能评测

    作者 商之狄 发布于 2014年11月10日 本文依据笔者所在团队的一些近期开发和应用的实践,整理出一些有意义的信息,拿出来和社区分享.其中既包括在云端应用Docker与相关技术的讨论,同时也有实施过 ...

  8. 利用dhtmlxGrid做的表格排序的功能。

    dhtmlxGrid支持tree和grid. grid之间.grid内部进行拖拽, 如在grid内部进行拖拽,可以增加一行:在grid之间拖拽,第一个grid的记录删除,第二个grid增加一行记录.

  9. 使用jQuery实现简单的拖动效果

    转自:http://www.muzilei.com/archives/136 如何实现拖动效果? 浏览DEMO 首先分析下拖动效果原理: 1.当鼠标在被拖动对象上按下鼠标(触发onmousedown事 ...

  10. 从零开始学习jQuery

    转自:http://www.cnblogs.com/zhangziqiu/archive/2009/04/30/jQuery-Learn-1.html 本系列文章导航 从零开始学习jQuery (一) ...