加载中...

| 类别 | 前端技术 |
| 领域 | 前端开发 |
WebSocket 是一种网络通信协议,允许客户端与服务器在单条 TCP 连接之上建立持久的、全双工的通信通道。与传统 HTTP 的请求-响应模式不同,WebSocket 建立连接后,双方均可在任意时刻主动发送数据,适用于低延迟的实时通信场景。[1]
WebSocket 连接通过一次 HTTP 升级握手建立:客户端发送带有 Upgrade: websocket 头的请求,服务器确认后,底层 TCP 连接即从 HTTP 协议切换为 WebSocket 协议,后续通信以轻量的数据帧形式进行,省去了反复建立连接与携带完整 HTTP 头部的开销。连接在双方显式关闭前持续保持,期间可双向传输文本或二进制数据。其默认端口与 HTTP 一致,并提供基于 TLS 的加密变体 wss。
优点在于:真正的双向实时通信、低延迟、低协议开销,相较轮询更高效。挑战包括:需要维护长连接,服务端在高并发下的连接管理与资源消耗较大;断线重连、心跳保活、消息顺序与可靠性需在应用层自行处理;部分代理与防火墙对长连接支持不佳。
WebSocket 广泛用于即时聊天、在线协作编辑、实时游戏、行情推送、通知系统与直播弹幕等场景。在仅需服务器单向推送的简单场景中,Server-Sent Events 是更轻量的替代;而需要双向交互时,WebSocket 仍是首选方案。

| 类别 | 前端技术 |
| 领域 | 前端开发 |
登录 后参与讨论
暂无讨论,来发表第一条评论吧