WebSocket不是万能的,这些场景你用HTTP就够了
时间:2026-05-30 23:18:16 阅读:26
很多人一听实时通信就想到WebSocket,但大部分场景用HTTP轮询或SSE就够了,上WebSocket是杀鸡用牛刀。
HTTP轮询:简单粗暴但够用
前端每隔几秒请求一次后端,拿到最新数据。代码简单,兼容性好,不需要特殊服务器支持。缺点是请求次数多、有延迟。但对于新闻列表刷新、股票行情、后台任务状态这些场景,几秒的延迟完全可以接受,轮询完全够用。
SSE(Server-Sent Events):单向推送的最优解
服务端单向推数据给客户端,不需要双向通信。比如AI聊天的流式输出、系统通知推送、日志实时输出。SSE用的是普通HTTP协议,不需要特殊配置,浏览器原生支持EventSource API,断线自动重连。比WebSocket轻量得多。
WebSocket的真正用武之地
双向实时通信:在线协作编辑(多人同时改一个文档)、即时聊天、多人游戏、实时对战。这些场景客户端和服务端都需要频繁互发消息,HTTP轮询延迟太高,SSE只能单向——只有WebSocket合适。
选型决策
服务端单向推送用SSE,客户端定时获取用轮询,双向实时通信用WebSocket。大部分人真正需要的是SSE,不是WebSocket。不要因为WebSocket听起来酷就上,技术选型要的是合适,不是酷。




提供云计算服务