题目
如何处理流式连接的心跳、超时、代理缓冲和资源释放?
答案
心跳用来让连接和中间代理知道双方仍然在线,发送间隔应小于链路中的空闲超时。SSE 可以使用注释行或专门事件,但心跳不能代替业务进度。 配置网关和代理允许流式响应,关闭不合适的缓冲,并确认压缩、中间缓存不会让小片段长期积压。只检查应用代码里的 `flush` 不够,必须通过真实入口验证。 区分连接空闲超时、模型超时和整项任务截止时间。慢客户端还需要背压或缓冲上限,避免消息积压耗尽内存。 连接断开、异常和正常结束都应释放订阅、计时器与网络资源。后台任务是否继续,由任务策略决定;若支持断线恢复,不能在每次断开时自动重跑或无条件取消任务。