API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway) · 课时

加权负载均衡与备用服务器

使用权重将流量不均匀地分配到各服务器,并添加仅在主服务器池发生故障时接管的备用服务器。

第 4 / 4 课13 个步骤

加权负载均衡与备用服务器 是 CoddyKit 上的免费 API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway) 课时。 这是第 4 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway) 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway) 课程共包含 4 节课。

本课时的部分内容尚未翻译,以英文显示。

When Servers Are Not Equal

Real upstream pools often mix machines of different capacity. A new 16-core server should not get the same share as an old 4-core box.

Nginx lets you bias traffic with weights so stronger servers handle more requests.

The weight Parameter

Add weight=N to a server. The default weight is 1. A server with weight=3 receives roughly three times as many requests as a weight=1 server.

upstream app {
    server 10.0.0.1 weight=3;
    server 10.0.0.2 weight=1;
}

How the Ratio Works

With weights 3 and 1, out of every 4 requests, 3 go to the first server and 1 to the second. Weights are relative, so 6 and 2 produce the same split as 3 and 1.

Weights with Other Algorithms

Weights work with round robin (the default) and least connections. They do not apply to ip_hash, which selects a server purely from the client IP.

upstream app {
    least_conn;
    server 10.0.0.1 weight=5;
    server 10.0.0.2 weight=2;
}

Introducing Backup Servers

A server marked backup receives no traffic while any primary server is available. It activates only when all primaries are down or unreachable.

upstream app {
    server 10.0.0.1;
    server 10.0.0.2;
    server 10.0.0.9 backup;
}

Why Use a Backup

Backups give you a graceful fallback, for example a maintenance page server or a secondary data center, without sending it normal traffic during healthy operation.

Marking a Server Down

Use down to permanently remove a server from rotation, handy during planned maintenance without deleting the line.

upstream app {
    server 10.0.0.1;
    server 10.0.0.2 down;
}

Failure Detection Parameters

max_fails sets how many failed attempts mark a server unavailable, and fail_timeout sets the window and how long it stays out.

server 10.0.0.1 max_fails=3 fail_timeout=30s;

Combining Weight and Backup

You can mix weights for primaries and keep a single backup for the whole pool. The backup ignores weight until it is the only option.

upstream app {
    server 10.0.0.1 weight=4;
    server 10.0.0.2 weight=1;
    server 10.0.0.9 backup;
}

Limiting Connections

The max_conns parameter caps simultaneous connections to a server, protecting a weaker box even if its weight is high.

server 10.0.0.2 weight=2 max_conns=100;

Testing the Distribution

Fire many requests and check your access logs per upstream to confirm the ratio matches the weights. Adjust weights based on observed CPU and latency.

for i in $(seq 1 100); do curl -s http://localhost/ > /dev/null; done

Quick Check

A server is marked backup. When does it receive requests?

Recap

You learned to fine-tune traffic distribution:

  • weight=N biases traffic toward stronger servers
  • Weights are relative and apply to round robin and least_conn
  • backup servers activate only when primaries fail
  • down, max_fails, and max_conns control availability

Together these give you precise control over an uneven server fleet.

免费开始

用 AI 导师学习 API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway) — 免费

在浏览器中编写并运行真实代码,获得全天候 AI 导师的即时帮助,并在网页或应用中继续学习。

课程
12
课程
48

常见问题解答

「加权负载均衡与备用服务器」课时是免费的吗?

是的 — 「加权负载均衡与备用服务器」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway) 课程的其余内容,请升级到 CoddyKit PRO。 API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway) 课程共包含 4 节课。

「加权负载均衡与备用服务器」这节课中我会学到什么?

使用权重将流量不均匀地分配到各服务器,并添加仅在主服务器池发生故障时接管的备用服务器。 你通过在浏览器中直接运行的动手代码来练习 API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway),全天候 AI 导师会在你学习这节课的过程中回答你的问题。

学习 API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway) 需要有经验吗?

无需任何先前经验。CoddyKit 上的 API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway) 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 4 节课,共 4 节。

「加权负载均衡与备用服务器」课时需要多长时间?

大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。

我能在这节 API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway) 课中编写并运行代码吗?

能。每节 API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway) 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。

此课程中的所有课时

  1. 负载均衡算法
  2. 健康检查与服务器监控
  3. 粘性会话与会话持久性
  4. 加权负载均衡与备用服务器
← 返回 API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway)