监听器中分配算法和会话保持算法是什么关系?
会话保持功能,目的是将同一个用户的会话分发到相同的后端节点,共享型与独享型负载均衡支持情况如下表内容所示。
表独享型负载均衡会话保持支持情况
表共享型负载均衡会话保持支持情况
分配策略 会话保持类型 TCP/UDP HTTP/HTTPS 加权轮询算法 源IP地址 支持 不支持 负载均衡器cookie 不涉及 支持 应用程序cookie 不涉及 不支持 加权最少连接 源IP地址 支持 不支持 负载均衡器cookie 不涉及 支持 应用程序cookie 不涉及 不支持 源IP地址 源IP地址 不涉及 不支持 负载均衡器cookie 不涉及 不支持 应用程序cookie 不涉及 不支持 表 共享型负载均衡会话保持支持情况
分配策略 会话保持类型 TCP/UDP HTTP/HTTPS 加权轮询算法 源IP地址 支持 不支持 负载均衡器cookie 不涉及 支持 应用程序cookie 不涉及 不支持 加权最少连接 源IP地址 支持 不支持 负载均衡器cookie 不涉及 支持 应用程序cookie 不涉及 不支持 源IP地址 源IP地址 不涉及 不支持 负载均衡器cookie 不涉及 不支持 应用程序cookie 不涉及 不支持
一般建议:算法可以使用轮询算法,四层会话保持使用源IP地址,七层使用负载均衡器cookie方式。
监听器删除之后,负载均衡器是否会立即停止转发业务流量?
当删除四层监听器时,由于客户端和负载均衡器之间都是短连接,负载均衡器会立即停止转发业务流量;
当删除七层监听器时,由于客户端和负载均衡器之间保持长连接,客户端和负载均衡器之间仍然会有部分TCP长连接存在,这些TCP长连接已经建立,不受监听器是否删除的影响,直到客户端在这些TCP连接上停止发送请求时间间隔达到keepalive_timeout超时时间(300s)之后,负载均衡器才会断开这些长连接并停止转发业务流量。
说明keepalive_timeout为空闲超时时间,只有客户端和负载均衡器之间长连接时才会存在keepalive_timeout。
如何启用WebSocket支持?
无需配置,当选用HTTP监听时,默认支持无加密版本WebSocket协议(WS协议);当选择HTTPS监听时,默认支持加密版本的WebSocket协议(WSS协议)。
添加 /修改监听器时,选择不到想选择的后端主机组是什么原因?
这是因为后端主机组的协议(后端协议)与监听器的协议(前端协议)存在对应关系,在给监听器添加后端主机组时,只能添加与其协议对应的后端主机组。
表独享型负载均衡-前端协议与后端协议对应情况
前端协议 | 后端协议 |
---|---|
TCP | TCP |
UDP | UDP/QUIC |
HTTP | HTTP |
HTTPS | HTTPS |
表共享型负载均衡-前端协议与后端协议对应情况
前端协议 | 后端协议 |
---|---|
TCP | TCP |
UDP | UDP |
HTTP | HTTP |
HTTPS | HTTPS |
独享型负载均衡器为什么添加不了监听器?
这是因为您在创建独享型负载均衡时,只选择了网络型(TCP/UDP)实例规格或只选择了应用型(HTTP/HTTPS)实例规格,只能添加对应协议的监听器。
独享型ELB实例的类型选定后无法修改,请您合理评估选择。例如:您初始创建了网络型负载均衡实例,则只能创建TCP/UDP监听器,无法添加或修改为应用型ELB实例,也就无法添加HTTP/HTTPS监听器。
表独享型负载均衡类型与监听器的关系
独享型负载均衡的类型 | 对应协议 | 可添加的监听器类型 |
---|---|---|
网络型 | TCP/UDP | TCP监听器、UDP监听器 |
应用型 | HTTP/HTTPS | HTTP监听器、HTTPS监听器 |