Timeout超时报错
一句话:请求等太久没有结果,程序主动中断,常见于接口慢、网络不稳或任务太重。
它是什么
Timeout超时表示程序在规定时间内没有等到响应。它不一定代表对方服务坏了,也可能是网络慢、模型生成太久、数据库查询太重、文件太大,或者部署平台限制了最长执行时间。
适合干什么
- 调用AI接口经常卡住的人
- 部署到Vercel、服务器或云函数的人
- 做文件上传、总结长文、RAG检索的人
- 排查接口稳定性的开发者
不适合干什么
- 只看前端提示,不看服务端日志
- 不知道请求调用的是哪个服务
- 任务本身需要很长时间但没有异步设计
- 把超时时间无限调大的人
普通人怎么用
- 先确认是哪一步超时
- 查看服务端日志和第三方接口响应时间
- 减少输入内容或文件大小
- 适当增加timeout设置
- 给用户返回处理中提示
进阶用户怎么用
- 把长任务改成异步队列
- 增加重试但限制次数
- 给外部API设置熔断
- 优化数据库查询和索引
- 把长文本拆块处理
常见误区
- 只在前端改超时时间,后端平台仍然超时
- 无限重试导致费用暴涨
- 不知道是AI模型慢还是数据库慢
- 没有给用户明确等待状态
和相似工具的区别
- Timeout vs 500:Timeout强调等太久,500强调服务器内部出错,两者可能同时出现。
- 超时 vs 限流:超时是等不到结果,限流是请求太多被拒绝。
入门步骤
- 定位请求
- 看日志
- 缩小输入
- 调整超时
- 加重试
- 改异步
推荐工具(第三方)
浏览器Network、服务器日志、Postman、Sentry、Vercel Logs