AI Agent实时通信:WebSocket还是SSE?别再纠结了
Agent要实时推送给用户,选WebSocket还是SSE?很多人花了一天做选择,最后发现用错了。
💡 你将学到
Agent要实时推送给用户,选WebSocket还是SSE?很多人花了一天做选择,最后发现用错了。
先是选了WebSocket——结果发现Agent只是单向推送,不需要双向通信。换了SSE,代码少了一半。
两者的本质区别
| 维度 | WebSocket | SSE (Server-Sent Events) |
|---|---|---|
| 方向 | 双向 | 服务器→客户端 |
| 协议 | WS/WSS | HTTP |
| 自动重连 | 需自己实现 | 原生支持 |
| 浏览器支持 | 全 | 全(除IE) |
| 适合场景 | 聊天、游戏 | 通知、流式输出 |
怎么选
只需要服务器推送给客户端 → SSE Agent的流式输出、状态更新、通知——都是单向的,SSE够用。
需要双向实时通信 → WebSocket 用户要打断Agent、Agent要同时收用户输入——这时才需要WebSocket。
代码对比
SSE (FastAPI)
from sse_starlette.sse import EventSourceResponse
@app.get("/stream")
async def stream():
async def gen():
for chunk in agent.stream(query):
yield {"data": chunk}
return EventSourceResponse(gen())
总结
80%的Agent实时场景用SSE就够了。 除非你需要双向通信(聊天室、实时协作),否则别碰WebSocket——更复杂、资源消耗更大。
相关文章
相关文章
2026-08-06
研究型AI智能体:可自行运行的深度研究
2026-08-06
开源LLM路由器:2026年 RouteLLM 对比 LiteLLM
2026-08-01
AI模型部署类型详解:批处理、在线、边缘、Serverless
本站文章由编辑人工撰写,收录的工具均经过实测或公开资料核验。文中链接指向工具官网或 GitHub 仓库,仅作信息参考,不构成付费推广。
