1,Nginx负载均衡策略upstream,六种策略

本文详细介绍了Nginx的六种负载均衡策略,包括轮询、权重、IP Hash、fair、URL_hash和最少连接,以及如何配置它们以提高应用的可用性和性能。通过实例讲解了如何在upstream中配置和利用这些策略来管理后端服务器的请求分布。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

upstream提供负载均衡功能,支持6种负载分配方式,默认是轮询分配方式 

负载均衡作用

  • 转发功能
  • 故障转移
  • 恢复添加

工作流程

  • 分析客户端请求,构建调用服务器
  • 调用ngx_http_upstream_init开始调用服务器建立TCP连接
  • 发送客户端中的请求报文
  • 接收调用服务器的响应头进行解析并往服务器转发
  • 接收调用服务器的响应体,并进行转发

Nginx负载均衡策略 如下

 Nginx轮询 默认、

        通过Nginx反向代理轮询server中的服务器

upstream backServer{
		server 127.0.0.1:8083;
		server 127.0.0.1:8085;
		# 补充: backup备用服务器  只有当主服务器(8082、8085端口)都不能访问时才会访问此(83端口)备用服务器 当主服务器恢复正常后 则访问主服务器
		#server 127.0.0.1:83 backup;
	}

Nginx权重weight(访问概率和weight值成正比关系)

         通过Nginx反向代理权重访问server中的服务器

upstream backServer{
		server 127.0.0.1:8083 weight=1;
		server 127.0.0.1:8085 weight=4;
		# 补充: backup备用服务器  只有当主服务器(8082、8085端口)都不能访问时才会访问此(83端口)备用服务器 当主服务器恢复正常后 则访问主服务器
		#server 127.0.0.1:83 backup;
	}

Nginx IP hash值策略

        通过Nginx反向代理IP hash值访问server中的服务器,同一个客户端请求都会分发到统一服务器处理,解决session问题。

	upstream backServer{
		ip_hash
		server 127.0.0.1:8083;
		server 127.0.0.1:8085;
		# 补充: backup备用服务器  只有当主服务器(8082、8085端口)都不能访问时才会访问此(83端口)备用服务器 当主服务器恢复正常后 则访问主服务器
		#server 127.0.0.1:83 backup;
	}

Nginx fair策略

   fair按后端服务器响应时间分配请求,响应时间短的优先分配     

	upstream backServer{
		server 127.0.0.1:8083;
		server 127.0.0.1:8085;
		# 补充: backup备用服务器  只有当主服务器(8082、8085端口)都不能访问时才会访问此(83端口)备用服务器 当主服务器恢复正常后 则访问主服务器
		#server 127.0.0.1:83 backup;
		fair;
	}

 Nginx url_hash策略

       url_hash与ip_hash类似,根据访问URL的hash结果来分配请求,使得每个URL定向到同一个后端服务器,后端服务器为缓存时的使用场景。

upstream backServer{
		server 127.0.0.1:8083;
		server 127.0.0.1:8085;
		# 补充: backup备用服务器  只有当主服务器(8082、8085端口)都不能访问时才会访问此(83端口)备用服务器 当主服务器恢复正常后 则访问主服务器
		#server 127.0.0.1:83 backup;
		hash $request_uri;
		hash_method crc32;
	}

 Nginx least_conn策略

least_conn把请求转发给连接数较少的后端服务器

upstream backServer{
		server 127.0.0.1:8083;
		server 127.0.0.1:8085;
		# 补充: backup备用服务器  只有当主服务器(8082、8085端口)都不能访问时才会访问此(83端口)备用服务器 当主服务器恢复正常后 则访问主服务器
		#server 127.0.0.1:83 backup;
		least_conn;
	}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

科技发烧爱好者-羊工

谢谢支持

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值