nginx的反向代理upstream
一、安装nginx
查看这篇博客 https://www.cnblogs.com/zrl66/p/14118063.html
二、负载均衡upstream
下面就是访问www.qwe.com域名反向代理,然后请求转到upstream backend权重配置,根据配置进行访问。
http { ...... upstream backend { server www.abc.net:433 weight=1;#这里默认为80端口,如果使用ssl访问则需要加433端口 server 120.20.30.40 weight=1; server nginx2 weight=2;# docker容器的内部访问 server nginx4 weight=2; } server { listen 80; # http #listen 443 ssl; # https (可以混合http一起用) server_name www.qwe.com; location / { #请求根目录 proxy_pass http://backend; #这里写upstream proxy_redirect off; #重定向 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Real-IP $remote_addr; proxy_set_header Host $http_host; } }
三、upstream的server服务配置
若配置好upstream多个server时,发生故障时会自动去除该server的权重访问。
http{ ...... upstream backend { server www.abc.net:433 weight=1;#若该服务为外部项目,则无法正常访问 server 120.20.30.40 weight=1; server nginx2 weight=2; #nginx2关闭时,则会移除该服务权重 server nginx4 weight=2; } }
四、总结
在 Nginx 的上下文中,权重配置是应用于 upstream
块中定义的后端服务器组的,而不是跨不同的 Nginx 服务器实例。每个 Nginx 服务器实例管理自己的 upstream
块和权重配置,这些配置不会自动跨多个 Nginx 服务器同步或共享。
负载均衡器(如 HAProxy)通常支持更复杂的负载均衡策略,包括基于权重的分发、健康检查、会话保持等。你可以在负载均衡器上配置权重,以便根据需要将流量分配到不同的 Nginx 服务器。
如果你正在使用 Nginx 开源版,并希望跨多个服务器实现负载均衡,你可能需要考虑使用像 Keepalived 这样的工具与 Nginx 结合使用,或者升级到 Nginx Plus,它提供了内置的负载均衡功能。然而,请注意,这些解决方案可能需要额外的配置和管理。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· NetPad:一个.NET开源、跨平台的C#编辑器
· PowerShell开发游戏 · 打蜜蜂
· 凌晨三点救火实录:Java内存泄漏的七个神坑,你至少踩过三个!