SSE (Server-Sent Events) 交互流程
2026-02-11 11:29:09 0 举报
SSE (Server-Sent Events) 交互流程图
作者其他创作
大纲/内容
📊 性能特征• 并发100: 18ms延迟• 并发1000: 1511ms延迟• 内存: ~80KB/连接• 成功率随并发下降
⚠️ 架构限制• 双端点复杂度• 长连接资源消耗• 有状态难以水平扩展• 企业防火墙不友好
事件队列id: 123 | event: message | data: {...}
心跳保活每15-30秒发送注释行(:)
② 响应头确认HTTP/1.1 200 OKContent-Type: text/event-streamCache-Control: no-cache
连接管理器维护长连接池每客户端≈80KB内存
SSE (Server-Sent Events) 交互流程双通道长连接模式 | 有状态架构
③ 发送请求POST /messages
POST /messages客户端发送端点
Client
EventSource API
连接关闭
状态管理• Last-Event-ID• retry计数器• 连接状态
断线重连
自动重连机制onerror → 等待retry时间 → 重连
心跳保活
事件处理器onmessage | onopen | onerror
持续推送
Server
GET /sse专用推送端点
④ 持续推送data: {\"content\": \"chunk1\"}id: 123 | retry: 5000
⑥ 断线重连Last-Event-ID: 123
建立连接
连接生命周期时间轴
① 建立SSE通道GET /sse HTTP/1.1Accept: text/event-streamConnection: keep-alive
⑤ 心跳: ping (注释行)
收藏
0 条评论
下一页