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访问页面发现确实比较慢 ...
随机推荐
- 字典树基础进阶全掌握(Trie树、01字典树、后缀自动机、AC自动机)
字典树 概述 字典树,又称单词查找树,Trie树,是一种树形结构,是一种哈希树的变种.典型应用是用于统计,排序和保存大量的字符串(但不仅限于字符串),所以经常被搜索引擎系统用于文本词频统计.它 ...
- eclipse常用功能及快捷键
1.更改默认字体 Window->Preferences->General->Appearance->Colorsand Fonts ->Basics->Text ...
- 浅谈Python导入外部文件
import 和 from ... import * 有什么区别? 例如我写了个模块hello.py def print_func(args): print("Hello " + ...
- Scratch 第1课 让小猫动起来
素材下载 链接:https://pan.baidu.com/s/1qX0T2B_zczcLaCCpiRrsnA提取码:xfp8
- pip 命令参数以及如何配置国内镜像源
文章更新于:2020-04-05 注:如果 pip 命令不可以用,参见:python pip命令不能用 文章目录 一.参数详解 1.命令列表 2.通用参数列表 二.实际应用 1.常用命令 2.`pip ...
- 【硬核】使用替罪羊树实现KD-Tree的增删改查
本文始发于个人公众号:TechFlow,原创不易,求个关注 今天是机器学习的第16篇文章,我们来继续上周KD-Tree的话题. 如果有没有看过上篇文章或者是最新关注的小伙伴,可以点击一下下方的传送门: ...
- "按钮"组件:<h-button> —— 快应用组件库H-UI
 <import name="h-button" src="../Common/ui/h-ui/basic/c_button"></impo ...
- Python Request-学习笔记(1)
#导入Requests模块:import requests # 然后,尝试获取某个网页.返回的是reaponse对象,可以从这个对象中获取所有我们想要的信息.response = requests.g ...
- 15.ASP.NET Core 应用程序中的静态文件中间件
在这篇文章中,我将向大家介绍,如何使用中间件组件来处理静态文件.这篇文章中,我们讨论下面几个问题: 在ASP.NET Core中,我们需要把静态文件存放在哪里? 在ASP.NET Core中 wwwr ...
- k8s中token过期重新生成
k8s中token过期重新生成 通过kubeadm初始化之后,都会提供node加入的token 默认的token的有效期是24小时,当过期了,如何新生成呢 重新生成token: [root@k8s-m ...