Windows中部署Tomcat集群

1.新建文件夹tomcats

准备3台tomcat
在这里插入图片描述
在这里插入图片描述
Windows中部署Tomcat集群_第1张图片
测试:
Windows中部署Tomcat集群_第2张图片
Windows中部署Tomcat集群_第3张图片
Windows中部署Tomcat集群_第4张图片

错点:

使用的是7无缓存版本,但是扔显示8。解决:将环境变量中的catalina删掉。

                     ~~删除线格式~~ 

2.修改配置文件
Windows中部署Tomcat集群_第5张图片
第一台8005
第二台8006
第三台8007Windows中部署Tomcat集群_第6张图片

此位置第一台8091,第二台8092,第三台8093Windows中部署Tomcat集群_第7张图片
此位置第一台8009,第二台8010,第三台8011

二、发布部署项目

将Javaweb项目Run as-》Maven install
在这里插入图片描述拷贝到三台tomcat服务器webapps 中,将ROOT文件夹删掉,把war文件重命名为ROOT.war
Windows中部署Tomcat集群_第8张图片
重启8093服务器
Windows中部署Tomcat集群_第9张图片
Windows中部署Tomcat集群_第10张图片
Windows中部署Tomcat集群_第11张图片
Windows中部署Tomcat集群_第12张图片
目测需要保证三个startup.bat都开启的状态,才能保证三个端口号对应项目可访问
Windows中部署Tomcat集群_第13张图片

三、Nginx负载均衡

特点:根据配置玩家顺序,一次访问不同的tomcat服务器

修改nginx.conf

	#配置tomcat负载均衡,1-轮询策略
	upstream jt	{
		server localhost:8091;
		server localhost:8092;
		server localhost:8093;
		
	}
	

	#后台管理系统
	server	{
		listen	80;
		server_name	manage.jt.com;
		
		location	/	{
				proxy_pass	http://jt;
		}
	}
	

2.重启Nginx
在这里插入图片描述
3.改造三台服务器的主页呈现,结果
Windows中部署Tomcat集群_第14张图片
Windows中部署Tomcat集群_第15张图片
Windows中部署Tomcat集群_第16张图片
四、权重:
特点:根据服务器处理能力不同,动态划分请求,处理能力越高,所处理请求越多。

	#配置tomcat负载均衡,1-轮询策略 2-权重
	upstream jt	{
		server localhost:8091 weight=6;
		server localhost:8092 weight=3;
		server localhost:8093 weight=1;
		
	}

解释:10次访问中6次访问91,3次访问92,1次访问93
在这里插入图片描述

五、ip_hash

实际问题 :采用集群的方式不能实现用户session共享,因为不同的tomcat之间是物理隔离,如何解决?

专业术语:
session黏着:指session共享

解决方案:
A:采用sessionid进行url重写
优点:可以实现Session共享,cookie禁用【拼接id】
缺点:效率太低

B:使用Nginx中的IP_HASH技术,能够根据用户的IP动态的绑定一台服务器,变相实现Session共享,Ip_hash优先级最高,配置后轮询和权重不生效【一般也不使用】
缺点:1.如果服务器宕机,用户访问受限
2.使用ip_hash导致负载不均
3.安全性不好
Windows中部署Tomcat集群_第17张图片
Windows中部署Tomcat集群_第18张图片
C:实现单点登录(SSO)用户登陆一次 后期使用信用登录

六、Nginx故障迁移

1.手动下线
可在upstream中给服务器 配置down;

server localhost:8091 weight=6 down;

2.备用机机制 backup

server localhost:8093 weight=1 backup;

3.设定超时时间

				proxy_connect_timeout       3;  
				proxy_read_timeout          3;  
				proxy_send_timeout          3; 

Windows中部署Tomcat集群_第19张图片
4.健康检测
说明:在规定周期内,用户会通过健康检测,检查当前服务器是否可用,如果发现服务器宕机,则咋当前周期内不会再将请求发送到故障机。直到下一个周期后再继续提供服务。

		#ip_hash;
		server localhost:8090 max_fails=1 fail_timeout=60s;
		server localhost:8091 max_fails=1 fail_timeout=60s;
		server localhost:8092 max_fails=1 fail_timeout=60s;

Windows中部署Tomcat集群_第20张图片
在这里插入图片描述
可做测试

七.公司中服务器部署步骤【※】

  • 根据本次部署的策略,将服务器进行分类
  • 将需要部署的服务器进行下线处理down
  • 将war包发布到指定的tomcat服务器中,之后进行测试,如果测试无误,将该服务器上线即可 之后一次上线其他的服务器

你可能感兴趣的:(JT项目)