当前位置: 首页 > news >正文

Nginx 负载均衡配置模板:轮询、权重、IP哈希、最少连接

你是不是也遇到过这种情况:

  • 上了多台服务器,流量分配不均,有的忙死、有的闲死?

  • 用户明明登录了,一刷新就掉线,因为请求跳到了另一台机器?

Nginx 的负载均衡功能可以解决这些问题。今天这篇文章,我直接给你4 种常用算法的配置模板,复制就能用,顺便告诉你什么时候该选哪一种。


一、先看一个最基础的 upstream 模板

upstream backend { server 192.168.1.10:8080; server 192.168.1.11:8080; server 192.168.1.12:8080; } server { listen 80; location / { proxy_pass http://backend; } }

这个配置使用默认的轮询(round-robin)算法,请求会依次发给三台服务器:第一台 → 第二台 → 第三台 → 第一台…

适用场景:服务器性能差不多,且服务是无状态的(比如静态资源、简单的 API)。


二、四种负载均衡算法对比

算法

配置关键词

行为

适用场景

轮询

默认(不写)

轮流分发,平均

服务器性能均衡,无状态服务

权重

weight=3

按比例分发,权重高的多接请求

服务器性能不均,强的多分点活

IP 哈希

ip_hash;

同一客户端 IP 始终打到同一台服务器

需要保持 session(如登录状态)

最少连接

least_conn;

优先分发给当前活动连接数最少的服务器

请求处理时间差异大(如文件上传、慢查询)


三、配置模板(直接复制)

1. 轮询(默认)

upstream backend { server 192.168.1.10:8080; server 192.168.1.11:8080; }

2. 权重

upstream backend { server 192.168.1.10:8080 weight=3; # 处理 3 倍流量 server 192.168.1.11:8080 weight=1; }

3. IP 哈希

upstream backend { ip_hash; server 192.168.1.10:8080; server 192.168.1.11:8080; }

4. 最少连接

upstream backend { least_conn; server 192.168.1.10:8080; server 192.168.1.11:8080; }

四、健康检查(可选,但推荐)

不加健康检查时,如果某台服务器挂了,Nginx 还是会往它发请求,直到超时。加上max_failsfail_timeout可以自动剔除故障节点:

upstream backend { server 192.168.1.10:8080 max_fails=3 fail_timeout=30s; server 192.168.1.11:8080 max_fails=3 fail_timeout=30s; }
  • max_fails=3:连续失败 3 次,标记为不可用

  • fail_timeout=30s:30 秒后重试


五、一个完整示例(权重 + 健康检查 + 反向代理)

upstream myapp { server 192.168.1.10:8080 weight=3 max_fails=3 fail_timeout=30s; server 192.168.1.11:8080 weight=1 max_fails=3 fail_timeout=30s; } server { listen 80; server_name api.example.com; location / { proxy_pass http://myapp; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; } }

六、总结

  • 轮询:默认,适合性能相同的无状态服务。

  • 权重:服务器性能有差异时用,强的多分点流量。

  • IP 哈希:需要保持 session 时用(注意:后端增减服务器会导致哈希重分配)。

  • 最少连接:请求处理时间差异大时用,能避免慢请求堆积。

把这几个模板存下来,下次配负载均衡直接复制改 IP 就行。

http://www.jsqmd.com/news/749223/

相关文章:

  • 观察 Taotoken 在高峰时段的 API 响应延迟与稳定性表现
  • 【Rust日报】2026-05-02 Temper - 用 Rust 编写的 Minecraft 服务器项目发布 0.1.0 版
  • 2026石英玻璃管技术全解析:石英玻璃加工/石英玻璃定制/石英玻璃片/石英玻璃管/耐高温石英玻璃/高透石英片/云母石英片/选择指南 - 优质品牌商家
  • 从Perlin噪声到粒子系统:开源项目seedance2-skill的技术拆解与复现指南
  • 树莓派5开源数字标牌方案Arexibo解析与实践
  • GPTyped:基于AI的TypeScript类型自动生成工具实战指南
  • 【读书笔记】《武则天》
  • AI驱动技能学习路径生成:从知识图谱到个性化规划
  • 2026沉降离心机厂家排行:卧式单级活塞推料离心机/卧式双级活塞推料离心机/卧式活塞推料离心机/卧式螺旋过滤离心机/选择指南 - 优质品牌商家
  • 高级微调技术(RLHF)
  • 华为OD新系统机试真题 2026-04-01 【计算数列位置N的值】
  • FTRL与BFCL在线学习算法对比测试与工程实践
  • MotionStream技术:实时运动控制与视频生成的深度耦合
  • 联邦学习频域防御:ProtegoFed抗后门攻击实践
  • 气体放电管(GDT)原理与防雷保护应用解析
  • C++数据结构--队列
  • 实时视频生成技术:MotionStream框架解析与应用
  • 智能代理开发:从代码到AI行为模式的设计
  • Git实践——GitLab服务器的部署与使用
  • 密集图像描述技术:规则系统与强化学习的融合创新
  • FTRL与BFCL在线学习算法性能对比与工程实践
  • 全国cppm报考和scmp报考TOP1(怎么报名及流程) - 众智商学院课程中心
  • 别再死记硬背公式了!用MATLAB动画演示混频器如何‘搬动’频谱(附代码)
  • 逻辑谬误识别:合成数据增强与LLM训练实践
  • 2026年3P防爆空调技术解析:分体式防爆空调/单元式防爆空调/壁挂式防爆空调/多联式防爆空调/天井式防爆空调/选择指南 - 优质品牌商家
  • MotionStream:实时视频生成框架的技术解析与应用
  • 冷轧不锈钢卷深度技术分享:镜面不锈钢板、201 不锈钢卷、201不锈钢板、304 不锈钢卷、304不锈钢板、316L不锈钢卷选择指南 - 优质品牌商家
  • 11.5B参数、1.2EFLOPS、训练从数周压到数小时:他们把通用原子势训练带入Exascale时代
  • MoltLock分布式锁:现代应用的高性能并发控制解决方案
  • Legacy-iOS-Kit架构深度解析:5大模块实现旧设备系统降级与性能重塑