在这篇文章中:

    名词描述

    • 负载均衡器:一个负载均衡器表示一个运行的负载均衡服务,它通常需要绑定一个浮动IP,可用来接受外网流量并且其分发到后端成员池中。
    • 监听器:监听器定义了服务的协议和监听的端口,负责接受请求并且转发给后端服务器,同时也负责对后端服务器进行健康检查。
    • 成员池:后端的一组云主机,负载均衡器接收到的流量将通过一定转发策略分发到这些云主机上。

    监听器负载均衡方法

    • 轮询:如果采用轮询方法,监听器会将按顺序从成员池中选择一个成员来响应客户端的请求。这种方法逻辑简单,公平地对待所有成员,适合用于所有后端成员处理能力相同的情况。

    • 最少连接数:如果采用最少连接数方法,监听器会挑选当前连接数最少的成员池成员。这种方法需要实时监控的每个成员的连接数,对于处理能力强、能快速完成响应并关闭连接的成员会分配到更多的请求。这种方法适合用户后端成员处理能力不一的情况。

    • 源 IP:如果采用源 IP 方法,监听器会将具有相同源 IP 的请求分发到同一个成员。对于有状态的应用来说,需要将同一个客户端的一系列多个请求保持在同一个成员上,此时需要使用源 IP 的负载均衡方法。

    监听器监控成员检查类型

    • PING:如果采用 PING 方法,监听器会定时发送 PING 请求包给后端所有成员,以感知成员是否在线。

    • TCP:如果采用 TCP 方法,监听器会定时对成员端口发送 TCP 包,以感知成员服务是否在线,相对 PING 方式更加精准,能感知到服务是否不可用,但是会对成员的网络会有微小影响,服务端端口将收发一些 TCP 包。

    • HTTP:如果采用 HTTP 方法,监听器会定时请求指定的 Web 服务地址,并以 HTTP 返回码作为成员监控的标准。如果用户提供的服务是 HTTP 服务,用 HTTP 方法检查成员网站地址(比如网站主页地址)的可访问性相较于 TCP 更加准确,可以应对 HTTP 服务软件(如Apache httpd、Nginx)可用,而Web应用软件不可用的异常情况。