Tomcat实现Session复制
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复制的更多相关文章
- nginx tomcat glassfish session 复制配置
1.nginx配置 [root@www1-nlb1 ~]# cat /usr/local/nginx/conf/nginx.conf | grep -v ^$ | grep -v ^# user w ...
- nginx+tomcat集群负载均衡(实现session复制)
转自:http://talangniao.iteye.com/blog/341512 架构描述 前端一台nginx服务器做负载均衡器,后端放N台tomcat组成集群处理服务,通过nginx转发到后面( ...
- Tomcat中session复制技术
一.准备三台机器主机的服务都正常,nginx与Tomcat构建负载均衡 主机名 IP地址 nginx 192.168.200.111 Tomcat1 192.168.200.11 ...
- 基于redis实现tomcat的session会话保持 (转)
出处:https://cloud.tencent.com/developer/article/1402997 基于redis实现tomcat的session会话保持 在实际生产中,我们经常部署应用服务 ...
- nginx+tomcat的集群和session复制
前端服务器采用nginx,后端应用服务器采用tomcat.nginx负责负载均衡,session复制在tomcat上处理. 1.nginx安装(略) 2.nginx配置负载均衡 http { incl ...
- nginx+tomcat负载均衡和session复制
本文介绍下传统的tomcat负载均衡和session复制. session复制是基于JVM内存的,当然在当今的互联网大数据时代,有更好的替代方案,如将session数据保存在Redis中. 1.安装n ...
- Apache + Tomcat 负载均衡 session复制
转自:http://blog.csdn.net/cssmhyl/article/details/8455400 http://snowolf.iteye.com/blog/743611 Apache ...
- Tomcat集群session复制与Oracle的坑。。
问题描述 公司某个系统使用了tomcat自带的集群session复制功能,然后后报了一个oracle驱动包里面的连接不能被序列化的异常. 01-Nov-2017 16:45:26.653 SEVERE ...
- Apache_proxy负载均衡和Session复制
今天上网查了查资料,之前使用apache的jk模块做负载均衡.后来觉得jk的负载配置有点死板,只能按照负载权重值来进行请求的分发,没有做到比较智能的负载平衡,并且使用mod_jk访问页面发现确实比较慢 ...
随机推荐
- B. Lost Number【CF交互题 暴力】
B. Lost Number[CF交互题 暴力] This is an interactive problem. Remember to flush your output while communi ...
- async和await是如何实现异步编程?
目录 异步编程样例 样例解析 浅谈Promise如何实现异步执行 参考 1.异步编程样例 样例: // 等待执行函数 function sleep(timeout) { return new Prom ...
- RMI 使用笔记
Java 远程方法调用,即 Java RMI( Java Remote Method Invocation ) .顾名思义,可以使客户机上运行的程序能够调用远程服务器上的对象(方法). 下面主要介绍一 ...
- thinkphp后端开发ajax接口开发测试
数据自动填充,Firefox的网络查看JSON数据,查错. 同时,用getLastSql函数查询,并且开启日志文件记录网页执行的全过程,还可以用thinkPHP内置的trace的跟踪. 谁有更好地方法 ...
- 阿里云服务器扩展分区和文件系统_Linux数据盘
官方文档永远是最好的 https://help.aliyun.com/document_detail/25452.html?spm=a2c4g.11186623.6.786.5fde4656Ln6AO ...
- MTK Android 如何获取系统权限
Android如何获得系统(system)权限 Android中如何修改系统时间(应用程序获得系统权限) 在 android 的API中有提供 SystemClock.setCurrentTimeMi ...
- JAVA debug 调试demo
1.设置断点,在代码的行号后面鼠标左键即可2.想要看调用方法的执行流程,那么调用方法也要加断点. package day6_debug; /* * 1.设置断点,在代码的行号后面鼠标左键即可 * 2. ...
- Array(数组)对象-->lastIndexOf() 方法
1.定义和用法 lastIndexOf() 方法可返回一个指定的字符串值最后出现的位置,如果指定第二个参数 start,则在一个字符串中的指定位置从后向前搜索. 语法: string.lastInde ...
- Go语言 可变参数
最近与同事讨论时,提到Go语言的可变参数,之前没有总结过相关知识点,今天我们介绍一下Go语言的可变参数. 可变参数(Variable Parameters):参数数量可变的函数称之为可变参数函数,主要 ...
- Thinking in Java,Fourth Edition(Java 编程思想,第四版)学习笔记(八)之Polymorphism
Polymorphism is the third essential feature of an object-oriented programming language,after data ab ...