外观
一句话答案
WebSocket 基于 HTTP 升级握手后保持全双工长连接,服务端可主动推送,适合聊天/实时通知/行情推送。
核心要点
握手: HTTP 请求头 Upgrade: websocket → 服务端 101 Switching Protocols
vs HTTP: 全双工(服务端可主动推) / 长连接 / 开销小(无HTTP头重复)
适用: 聊天/实时通知/协同编辑/行情推送
追问与易错
追问方向:
- WebSocket 和 HTTP 长轮询区别?
- WebSocket 断线重连怎么做?
- WebSocket 和 SSE 怎么选?
易错点:
- ❌ WebSocket 就是 HTTP——独立协议只是借 HTTP 握手
- ❌ WebSocket 适合所有实时场景——简单的用 SSE 更轻量
💡 记忆锚点
WebSocket像从写信(HTTP请求-响应)升级为打电话(全双工):先用HTTP说"咱们换电话聊吧"(Upgrade握手,101),之后双方随时开口说话(服务端主动推送),不用每次都写信头(省掉HTTP头开销)。适合聊天、行情这种需要"实时对讲"的场景。