首页/云/云网络与负载均衡速查/WebSocket 与长连接接入
负载均衡54 条

WebSocket 与长连接接入

WebSocket 在七层监听上需要支持协议升级头透传(多数产品默认支持),同时把连接空闲超时调整到大于静默间隔;应用层心跳依旧是保活与快速感知断链的基础手段。

前提七层监听透传 Upgrade / Connection 头
超时空闲超时需大于静默间隔上限,并配合心跳
心跳客户端与服务端定期 ping,防止中间设备清理空闲会话
排查连接周期性断开时,从链路上游逐层核对空闲超时

测试协议升级握手

测试协议升级握手
curl -sv -H 'Connection: Upgrade' -H 'Upgrade: websocket' \
  -H 'Sec-WebSocket-Version: 13' -H 'Sec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==' \
  http://<LB地址>/ws 2>&1 | grep -i -E 'HTTP/|upgrade'
CDN、WAF、负载均衡、接入网关任意一层的空闲超时都可能先清理连接,按链路顺序逐层核对。

易错点

  • 只调整 LB 超时,忽略 CDN / WAF 层的连接清理
  • 没有应用层心跳,静默连接被中间设备中断

数据来源与参考

  • 阿里云 CLB WebSocket 文档
  • 腾讯云 CLB WebSocket 说明
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌