后端岗位面试题更新 2026-08-05

在构建AI大模型评测平台时,需要实现流式响应以提升用户体验。请阐述SSE流式响应的实现机制,并分析选择SSE而非WebSocket的关键原因。

后端开发人工智能技术原理方案权衡SSEWebSocket

考察说明

考察候选人对服务端推送技术SSE的理解及其在AI评测场景下的选型判断。

回答思路

  1. 【回答框架 1】SSE是Server-Sent Events,基于HTTP协议的单向服务端推送技术。客户端通过EventSource API建立长连接,服务端可多次发送文本数据,格式为'data: ...\n\n'。实现时需设置响应头Content-Type为text/event-stream,并关闭缓存。
  2. 【回答框架 2】选择SSE而非WebSocket的原因:SSE基于HTTP,天然支持断线重连和自动重连,无需额外协议升级。对于AI评测这类以服务端推送为主、客户端交互少的场景,SSE实现简单,兼容性好。
  3. 【回答框架 3】WebSocket是全双工通信,适合需要双向实时交互的场景,如聊天、游戏。但在AI评测中,客户端主要接收生成结果,很少发送消息,SSE足够且更轻量。
  4. 【回答框架 4】SSE还支持自定义事件类型和ID,便于客户端处理;而WebSocket需要自己实现心跳和重连机制,增加复杂性。
  5. 【回答框架 5】在实现时,需注意连接管理、超时处理、消息格式兼容性。对于长文本生成,可分段推送,并做好错误处理和资源释放。
  6. 【关键点 1】SSE基于HTTP,单向推送,适合服务端到客户端的流式数据。
  7. 【关键点 2】SSE自动重连,WebSocket需手动实现。
  8. 【关键点 3】AI评测场景以推送为主,SSE更简单高效。
  9. 【关键点 4】SSE通过EventSource实现,需设置text/event-stream响应头。
  10. 【关键点 5】WebSocket适用于双向通信,SSE适用于单向流式。
  11. 【易错点 1】SSE连接数受限,需考虑连接管理。
  12. 【易错点 2】SSE消息格式错误会导致客户端解析失败。
  13. 【易错点 3】SSE不适用于客户端向服务端频繁发送消息的场景。