docker部署tocat+nginx 负载均衡

本文介绍了如何使用Docker部署Tomcat和Nginx进行负载均衡,详细阐述了负载均衡的原理和优点,并探讨了Nginx实现负载均衡的多种策略,包括轮询、权重、ip_hash等。通过实例演示了配置和本地验证过程。
摘要由CSDN通过智能技术生成

docker部署tocat+nginx 负载均衡


理论


什么是负载均衡

单从字面上的意思来理解就可以解释N台服务器平均分担负载,不会因为某台服务器负载高宕机而某台服务器闲置的情况。那么负载均衡的前提就是要有多台服务器才能实现,也就是两台以上即可

负载均衡的优点

简单的来说。可以减少服务器的压力,将原本一台服务器所要承受的访问量分给了多台,并提高了项目的可用性,当一台服务器挂掉的时候也不会导致整个项目瘫痪。

nginx实现负载均衡

nginx作为负载均衡服务器,用户请求先到达nginx,再由nginx根据负载配置将请求转发至服务器。
nginx负载均衡服务器:192.168.132.135
服务器:192.168.132.139
服务器:192.168.14.141

upstream www.test.com{	
	server 192.168.132.139;
	server 192.168.132.141;
}
server {
        listen       80;
        server_name  www.test.com;
        location / {
			proxy_pass http://www.test.com;
		}
}

掌握负载均衡常用的几种算法
【round-robin轮询、权重、ip_hash、fair(第三方)、url_hash(第三方)、least-connected(最少连接)】

1、轮询(默认)

upstream www.test.com {
		    server 192.168.132.139;  
		    server 192.168.132.141;  
		}  

每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除

upstream www.test.com用来指定一个服务器组,该组的名字是www.test.com,包含两台服务器。

在指定服务器组里面包含的服务器时以形式“server ip/domain:port”的形式指定,其中80端口可以忽略。

然后在接收到请求时通过“proxy_pass http://www.test.com”把对应的请求转发到组www.test.com上。

Nginx默认的负载均衡算法就是循环轮询,如上配置我们采用的就是循环轮询,其会把接收到的请求循环的分发给其包含的(当前可用的&#x

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值