负载均衡器根据 pool 健康状态和流量导向策略在 pool 之间分配流量。每个负载均衡器由其 DNS 主机名(lb.example.com、dev.example.com 等)或 IP 地址标识。
有关建议,请参阅常见负载均衡器配置。
公有负载均衡器用于处理来自公共 Internet 的流量。部署后会自动获得主机名,可立即访问。这些负载均衡器可将流量导向多种目标,包括公有主机名、公有 IP 地址和私有 IP 地址。
私有负载均衡器则用于私有网络内的内部用途。它们不会自动获得主机名,但可通过 Gateway Firewall Policies 或内部 DNS 系统分配。私有负载均衡器仅通过私有网络入口(如 Cloudflare One Client 或 Cloudflare WAN)接受流量,且只能将流量转发至私有 IP 地址。
有关 DNS 记录的详情,请参阅用于负载均衡的 DNS 记录。
Cloudflare 维护 keep-alive 连接以提升性能,并降低 Cloudflare 从边缘网络代理客户流量到站点源站时重复 TCP 连接的成本。
请确保在源站上启用 HTTP Keep-Alive 连接。Cloudflare 会在最后一个 HTTP 请求后最多 15 分钟(900 秒)内复用已打开的 TCP 连接。如果打开的 TCP 连接过多,源站 Web 服务器会关闭连接。HTTP Keep-Alive 有助于避免因 Cloudflare 代理而过早重置连接。
当使用 HTTP cookie 跟踪并将用户会话绑定到特定服务器时,配置会话亲和性 以按 cookie 标头解析 HTTP 请求。这样即使由于 keep-alive 而在同一 TCP 连接上发送多个 HTTP 请求,也能将每个请求导向正确的应用服务器。
例如,F5 BIG-IP 负载均衡器在 TCP 连接开始时设置会话 cookie(如果不存在),然后在同一 TCP 连接上的后续 HTTP 请求中忽略所有 cookie。这往往会破坏会话亲和性,因为 Cloudflare 会在同一 TCP 连接上发送多个 HTTP 会话。将负载均衡器配置为按 cookie 标头解析 HTTP 请求可避免此问题。
有关分步指南,请参阅创建负载均衡器。
有关负载均衡器属性的最新列表,请参阅 Cloudflare API 文档中的负载均衡器属性。
Cloudflare API 支持以下负载均衡器命令。
| Command | Method | Endpoint |
|---|---|---|
| Create Load Balancer | POST |
/zones/:zone_id/load_balancers |
| Delete Load Balancer | DELETE |
/zones/:zone_id/load_balancers/:id |
| List Load Balancers | GET |
/zones/:zone_id/load_balancers |
| Load Balancer Details | GET |
/zones/:zone_id/load_balancers/:id |
| Overwrite specific properties | PATCH |
/zones/:zone_id/load_balancers/:id |
| Overwrite entire Load Balancer | PUT |
/zones/:zone_id/load_balancers/:id |