监听器提供转发请求的能力,通过匹配请求的协议和端口,根据调度算法将请求流量分发给后端服务器组。CLB实例创建后,需要为其配置监听器。
监听器提供四层(TCP和UDP)和七层(HTTP和HTTPS)监听协议,表示监听器允许接收并转发的请求协议。
监听器协议类型 | 说明 | 应用场景 |
---|---|---|
TCP |
|
|
UDP |
| 适用于实时性要求高而可靠性要求相对较低的场景,如语音视频聊天、游戏、金融实时行情推送等。 |
HTTP |
| 适用于需要对数据内容进行识别的应用,如Web应用、页游等。 |
HTTPS |
| 适用于对安全性需求较高、需要加密传输的应用。 |
监听器端口是指为CLB实例接收请求并向后端服务器转发请求的端口。监听器端口的配置说明如下:
说明
由于HTTP、HTTPS协议在四层的流量转发均使用TCP协议,因此,TCP、HTTP、HTTPS三种协议的监听端口不允许重复。
监听器支持的调度算法包括以下三种:
加权轮询(WRR):该算法根据后端服务器的权重(建议您依据服务器性能设置权重,性能越好权重值越高),将来自用户的访问请求依次分发到不同的后端服务器。权重值越高的后端服务器,被轮询到的次数(概率)越高。
该算法适用于短连接服务。当每个请求占用后端服务器的处理时间基本相同、处理的请求类型相同或相似、请求时间相差较小时,推荐使用该算法。
加权最小连接数(WLC):根据后端服务器“当前连接数/权重”比值估计当前负载情况,将请求分发给“当前连接数/权重”比值最小的后端服务器。该算法需要记录各服务器的当前连接数,当一条请求被分发到某台后端服务器时,其连接数加一;当某条请求连接中止、超时或完成时,其连接数减一。
该算法适用于长连接服务,如FTP应用等。当需要处理不同的请求且请求时间相差较大时,推荐使用该算法。
源地址哈希(SH):基于源IP地址的一致性哈希,相同源地址的请求通过哈希表映射到相同的后端服务器。在移除或者添加一个后端服务器时,能够尽可能小地改变已存在的服务请求与处理请求服务器之间的映射关系。
该算法适用于无cookie功能的协议。当需要将同一用户的请求转发到相同后端服务器时,推荐使用该算法。
负载均衡支持为不同监听器配置带宽限速,避免不同业务之间共享带宽性能对业务造成影响。
监听器带宽限速功能具体使用约束如下:
监听器高级功能的支持情况根据协议类型有所不同,如下表所示。
下表中✓表示支持,×表示不支持。
功能 | TCP协议 | UDP协议 | HTTP协议 | HTTPS协议 |
---|---|---|---|---|
访问控制 | ✓ | ✓ | ✓ | ✓ |
健康检查 | ✓ | ✓ | ✓ | ✓ |
Proxy-Protocol获取源IP | ✓ | ✓ | × | × |
会话保持 | ✓ | ✓ | ✓ | ✓ |
支持HTTP 2.0 | × | × | × | ✓ |
监听带宽限速 | ✓ | ✓ | ✓ | ✓ |
连接优雅中断 | ✓ | ✓ | × | × |
Gzip数据压缩 | × | × | ✓ | ✓ |