据我了解,从单个客户端IP地址到服务器的最大TCP连接数为~64k连接。
但是,我不清楚的是服务器可以处理的最大连接数,在单个负载均衡器后面,考虑到连接在负载均衡器上终止。~64k是否只是因为只有一个IP服务器可以从中接收请求?
事实上,由于客户端临时端口范围的限制,上游服务器只能处理来自同一客户端的 64k 连接。
但是,您可以将多个 IP 地址分配给负载均衡器的同一专用接口,并强制服务器以轮循机制方式使用它们。
您可以在负载均衡器的同一接口上定义多个网络,例如:
- 192.168.1.1,
- 192.168.2.1,
- 192.168.3.1
并在上游服务器上定义相应的额外 IP 地址:
- 192.168.1.2,
- 192.168.2.2,
- 192.168.3.2 .
使用以下上游配置,负载均衡器将使用不同的 IP 地址将请求传递到同一上游服务器:
upstream ipproxy {
server 192.168.1.2:some-port;
server 192.168.2.2:some-port;
server 192.168.3.2:some-port;
}
负载均衡器将被迫使用不同的 IP 地址,从而允许您绕过 64k 连接限制并实现 192k 连接。