Tomcat实现Session复制

需要三台虚拟机一台Nginx两台Tomcat

关闭相关的安全机制

systemctl stop firewalld
iptables -F
setenforce 0

首先需要将两台Tomcat和一台nginx实现负载均衡

[root@nginx ~]# vim /usr/local/nginx/conf/nginx.conf

在http底下写入一个地址池里面写入你的IP地址:端口:权重

upstream tomcat_server {                             #你的地址池

server 192.168.200.12:8080 weight=1;

server 192.168.200.13:8080 weight=1;

}

在server里面实现你访问jsp的负载均衡

location ~ \.jsp$ {

proxy_pass http://tomcat_server;         #你的地址池名称

proxy_set_header Host $http_host;

}

一:配置各个机器的主机名

一台命名为Nginx

两台命名为node1 ,node2

[root@localhost ~]#hostname Nginx

[root@localhost ~]#hostname node1

[root@localhost ~]#hostname node2

二:配置主机名与ip的映射

[root@localhost ~]# vim /etc/hosts            #修改etc下的hosts文件

192.168.200.16 nginx

192.168.200.12 node1

192.168.200.13 node2

三:修改Tomcat的配置文件               

注:两台Tomcat都要做相同配置

[root@node1 ~]# vim /usr/local/tomcat/webapps/ROOT/session.jsp              #创建测试文件
Session ID:<%= session.getId() %><BR>
Sessionport:<%= request.getServerPort() %>
<% out.println("hello 192.168.200.12");%>

[root@node1 ~]# vim /usr/local/tomcat/conf/server.xml       #修改Tomcat的主配文件

<Engine name="Catalina" defaultHost="localhost" jvmRoute="node1">                #将括号中加入jvmRoute=“node1”主机名

<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>                 #取消注释(还有官方的方法加入官方给的代码)

[root@node1 ~]# vim /usr/local/tomcat/webapps/ROOT/WEB-INF/web.xml        #修改web.xml文件

将文件的倒数第二行加入<distrbutable/>

四:重新启动服务

[root@node1 ~]# /usr/local/tomcat/bin/shutdown.sh && /usr/local/tomcat/bin/startup.sh
 五:如果出现错误需要添加组播地址

route add -net 224.0.0.0 network 240.0.0.0 dev ens32     #最后写入自己的网卡名称

六:测试

Tomcat实现Session复制的更多相关文章

  1. nginx tomcat glassfish session 复制配置

    1.nginx配置 [root@www1-nlb1 ~]# cat /usr/local/nginx/conf/nginx.conf | grep -v ^$ | grep -v ^# user  w ...

  2. nginx+tomcat集群负载均衡(实现session复制)

    转自:http://talangniao.iteye.com/blog/341512 架构描述 前端一台nginx服务器做负载均衡器,后端放N台tomcat组成集群处理服务,通过nginx转发到后面( ...

  3. Tomcat中session复制技术

    一.准备三台机器主机的服务都正常,nginx与Tomcat构建负载均衡 主机名     IP地址 nginx       192.168.200.111 Tomcat1  192.168.200.11 ...

  4. 基于redis实现tomcat的session会话保持 (转)

    出处:https://cloud.tencent.com/developer/article/1402997 基于redis实现tomcat的session会话保持 在实际生产中,我们经常部署应用服务 ...

  5. nginx+tomcat的集群和session复制

    前端服务器采用nginx,后端应用服务器采用tomcat.nginx负责负载均衡,session复制在tomcat上处理. 1.nginx安装(略) 2.nginx配置负载均衡 http { incl ...

  6. nginx+tomcat负载均衡和session复制

    本文介绍下传统的tomcat负载均衡和session复制. session复制是基于JVM内存的,当然在当今的互联网大数据时代,有更好的替代方案,如将session数据保存在Redis中. 1.安装n ...

  7. Apache + Tomcat 负载均衡 session复制

    转自:http://blog.csdn.net/cssmhyl/article/details/8455400 http://snowolf.iteye.com/blog/743611 Apache  ...

  8. Tomcat集群session复制与Oracle的坑。。

    问题描述 公司某个系统使用了tomcat自带的集群session复制功能,然后后报了一个oracle驱动包里面的连接不能被序列化的异常. 01-Nov-2017 16:45:26.653 SEVERE ...

  9. Apache_proxy负载均衡和Session复制

    今天上网查了查资料,之前使用apache的jk模块做负载均衡.后来觉得jk的负载配置有点死板,只能按照负载权重值来进行请求的分发,没有做到比较智能的负载平衡,并且使用mod_jk访问页面发现确实比较慢 ...

随机推荐

  1. STM32F103ZET6窗口看门狗

    1.WWDG简介 窗口看门狗(WWDG)通常被用来检测由外部干扰或不可预见的逻辑条件造成的应用程序背离正常的运行序列而产生的软件故障. WWDG是一个不断往下递减的计数器.当WWDG的计数器递减到固定 ...

  2. .gitattributes

    .gitattributes文件是一个文本文件,文件中的一行定义一个路径的若干属性.以行为单位设置一个路径下所有文件的属性,格式如下: 要匹配的文件模式 属性1 属性2 GRLF和LF CRLF,LF ...

  3. FileReader与URL.createObjectURL实现图片、视频上传前预览

    之前做图片.视频上传预览常用的方案是先把文件上传到服务器,等服务器返回文件的地址后,再把该地址字符串赋给img或video的src属性,这才实现所谓的文件预览.实际上这只是文件“上传后再预览”,这既浪 ...

  4. SpringCloud(三)之我学 Hystrix

    1.断路器 在消费服务的启动类,添加注解:@EnableCircuitBreaker,在消费服务的调用类上,添加注解:@HystrixCommand(fallbackMethod = "&q ...

  5. Jmeter 压力测试笔记(2)--问题定位

    事情已经出了,是该想办法解决的时候了. 经过运维和DBA定位: 数据库读写分离中,读库延时超过了30秒,导致所有请求都压在主库.另外所有数据库都连接数都被占满,但活跃请求数量缺不多. 数据库16K的连 ...

  6. 一分钟搞定Java高频面试题

    一分钟搞定Java高频面试题 一.变量赋值和计算 题目: public static void main(String[] args) { int i = 1; i = i++; int j = i+ ...

  7. 如何将icon图标库引入自己的项目中

    ---恢复内容开始--- 今天是18年的国庆,趁着国庆的这股开心劲儿,开开心心的写点东西: 第一篇:关于如何将icon图标库引入自己的项目(此方法Taro,微信小程序,支付宝小程序等均适用,不会存在不 ...

  8. wireshark抓包实战(二),第一次抓包

    1.选择网卡. 因为wireshark是基于网卡进行抓包的,所以这时候我们必须选取一个网卡进行抓包.选择网卡一般有三种方式 (1)第一种 当我们刚打开软件是会自动提醒您选择,例如: (2)第二种 这时 ...

  9. shell脚本编程(ubantu)

    项目 内容 这个作业属于那个课程 这里是链接 作业要求在哪里 这里是链接 学号-姓名 17041506-张政 作业学习目标 了解shell脚本的概念及使用:掌握shell脚本语言的基本语法:学习简单的 ...

  10. Linux环境安装Docker

    1. 使用APT安装 # 更新数据源 apt-get update # 安装所需依赖 apt-get -y install apt-transport-https ca-certificates cu ...