CLB监听

更新时间: 2025-03-05 17:09:52

监听规定了如何将请求转发给后端服务器,每个实例至少需要一个监听才能正常使用。监听负责检查连接请求,并根据调度算法将流量分发至后端服务器。支持的协议包括TCP、UDP、HTTP和HTTPS。

支持的监听类型及使用场景

CLB提供四层监听(TCP或UDP协议)和七层监听(HTTP或HTTPS协议),您可根据应用场景添加对应类型的监听:

类型

协议

说明

使用场景

四层监听

TCP

  • 面向连接的协议,在正式收发数据前,必须和对方建立可靠的连接。

  • 提供可靠的数据传输;数据传输相对较慢。

  • 适用于注重可靠性、对数据准确性要求高、速度可以相对较慢的场景,如文件传输、发送或接收邮件、远程登录等。

  • 无特殊要求的Web应用。

更多信息,请参见添加TCP监听

UDP

  • 无连接的协议,在数据发送前不与对方进行三次握手,直接进行数据包发送,不提供差错恢复和数据重传。

  • 可靠性相对低;数据传输相对较快。

关注实时性而对可靠性要求相对较低的场景,如视频聊天、金融实时行情推送等。

更多信息,请参见添加UDP监听

七层监听

HTTP

  • 应用层协议,主要解决如何包装数据。

  • 基于Cookie的会话保持。

  • 使用X-Forwarded-For获取客户端真实IP地址。

需要对数据内容进行识别的应用,如Web应用、小型手机游戏等。

更多信息,请参见添加HTTP监听

HTTPS

  • 加密传输数据,可以阻止未经授权的访问。

  • 统一的证书管理服务,您可以将证书上传到负载均衡,解密操作直接在负载均衡上完成。

需要加密传输的HTTP应用。

更多信息,请参见添加HTTPS监听

端口配置

端口类型

说明

限制

监听端口(前端端口)

监听端口,也称为前端端口,是CLB用来接收请求的端口。

在同一个CLB实例内:

  • TCP监听、HTTP监听和HTTPS监听的端口必须唯一,相互之间不能重复。

    例如,创建的TCP监听端口为80,则不能创建端口为80的HTTP或者HTTPS监听。

  • UDP监听端口可以与TCP、HTTP或者HTTPS监听端口重复。例如,创建的UDP监听端口为81,则您可以创建端口为81的TCP、HTTP或者HTTPS监听。

  • 相同协议和端口的监听不能重复创建。例如,不能创建两个TCP监听,端口均为80。

服务端口(后端端口)

服务端口,也称为后端端口,是后端服务器的端口。

在同一个CLB实例内:

  • 如果监听绑定的是默认服务器组,则同一个监听端口只能将流量转发到多个后端服务器的相同端口。

  • 如果监听绑定的是虚拟服务器组或主备服务器组,则同一个监听端口可以将流量转发到多个后端服务器的不同端口。

  • 不同监听协议的服务端口可以重复。例如,TCP:80监听和HTTP:81监听可以同时绑定同一台后端服务器的同一个端口。

说明
  • HTTP和HTTPS监听不支持绑定主备服务器组。

  • 主备服务器组最多只能添加2台后端服务器。

监听功能对比

功能

四层监听

七层监听

(部分地域仅支持四层监听,详见CLB支持的地域信息

TCP监听

UDP监听

HTTP监听

HTTPS监听

后端协议

TCP协议

UDP协议

HTTP协议

HTTP协议

调度算法

  • 加权轮询 (WRR)

  • 轮询 (RR)

  • 一致性哈希(CH)

  • 加权轮询 (WRR)

  • 轮询 (RR)

  • 一致性哈希(CH)

  • 加权轮询(WRR)

  • 轮询(RR)

  • 加权轮询(WRR)

  • 轮询(RR)

配置证书

不涉及,若您的场景涉及需要在后端服务器部署SSL证书

不涉及

不涉及

在负载均衡CLB实例中创建证书

访问日志

不支持

不支持

支持

支持

秒级监控功能

支持

支持

不支持

不支持

主备服务功能

支持

支持

不支持

不支持

转发策略

不支持,若您的场景涉及需要在后端服务器配置转发策略

在负载均衡CLB实例中配置转发策略

CLB监听共享实例带宽

CLB实例的带宽是有限的,当您的CLB实例后端存在不同重要性程度的业务时,您可以将核心的业务设置足够的带宽,其他非核心业务竞争实例剩余的带宽资源,从而更好地保证您的核心业务的稳定性与可用性。CLB支持实例下的所有监听共享实例的总带宽。

多个监听如何共享实例带宽

例如您购买了一个带宽峰值为10 Mbps的CLB实例,并在该实例下创建了三个监听(监听A、监听B和监听C)。

监听A的带宽峰值设置为4 Mbps,另外两个监听没有设置带宽峰值。

三个监听的带宽使用可能出现如下几种情况:

  • 如果监听A和监听C一直没有流量,那么监听B最多也只能消耗剩余的6 Mbps带宽(10 Mbps-4 Mbps=6 Mbps)。

  • 如果监听C一直没有流量,而监听B的出流量很大,超过了剩余的6 Mbps带宽。此时,监听B会产生丢包;监听A因为有设置的4 Mbps的带宽,并且经过的流量没有超过设置的带宽峰值,所以不会产生丢包。

  • 如果监听A、监听B和监听C经过的流量都很大的情况下,那么监听B和监听C就会共享(竞争)剩余的6 Mbps带宽。此时,监听A的流量不会受监听B和监听C的影响,始终能达到设置的4 Mbps峰值;如果监听B和监听C的流量一样,两个监听占用的带宽会趋近于均分。

  • 如果监听A和监听B总共分配了10 Mbps带宽,剩余监听C没有可分配的带宽,监听C会访问失败并丢包。

因此,设置监听带宽限制是为了保证核心的业务始终有足够的带宽。非核心的业务可以不设置监听带宽值,它们竞争实例剩余的带宽资源。

说明

若您的总带宽与实际带宽峰值不匹配,请参见在部分特殊场景中,为什么会出现连接达不到带宽峰值的现象?

如何开启监听带宽限速

创建CLB监听时,在协议&监听配置向导页面,您可以单击高级配置右侧修改,选择开启监听带宽限速

  • 开启监听带宽限速:您可以对监听的带宽进行限制,但所有监听带宽峰值的总和不能超过实例的带宽峰值。

    说明

    开启监听带宽限速后,该监听下配置的所有转发策略共享此监听的带宽峰值。

  • 关闭监听带宽限速:在不限制监听带宽的情况下,实例下的所有监听共享实例带宽。

相关文档

CLB仅支持基础的四层和七层负载均衡(四层支持TCP和UDP协议,七层支持HTTP和HTTPS协议)。

阿里云当前已推出新一代七层负载均衡ALB与新一代四层负载均衡NLB,对应的四层和七层能力相比于CLB均有较大提升。ALB除了具备CLB七层能力外还支持QUIC监听及各种高级转发规则,NLB相比CLB性能更强且支持自动弹性,建议您优先使用ALB与NLB。

上一篇: CLB实例FAQ 下一篇: 添加TCP监听
阿里云首页 负载均衡 相关技术圈