You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何提升Next.js/Vercel中Server Action的执行时长限制?

解决Vercel上Next.js 14 Server Action超时问题(调用OpenAI API导致)

一、调整Vercel函数超时限制

Vercel不同计划的Serverless Function(含Server Action)超时上限不同:

  • 免费/基础计划上限为15秒,这就是你触发超时的原因
  • Pro计划可提升至60秒
  • Enterprise计划支持自定义上限,最高可达900秒(15分钟)

升级对应计划后,需在项目根目录的vercel.json中配置超时时间(值不能超过当前计划上限):

{
  "functions": {
    "app/**/*.{js,ts,jsx,tsx}": {
      "maxDuration": 60
    }
  }
}

二、优化OpenAI API调用以缩短响应时间

  • 开启流式响应:调用API时添加stream: true参数,逐步获取返回内容,无需等待完整响应,直接降低Server Action的等待时长
  • 选用轻量模型:gpt-3.5-turbo的响应速度普遍快于gpt-4,业务允许的情况下优先使用
  • 精简请求内容:优化prompt,去除冗余信息,减少上下文token数量,降低模型处理负载
  • 缓存重复请求:对相同或相似的prompt请求结果进行缓存,避免重复调用API浪费时间

三、异步后台处理(规避超时限制)

如果业务不要求实时返回结果,可将OpenAI API调用改为异步任务:

  • 使用Vercel Edge Functions或任务队列工具,把API调用放到后台执行
  • Server Action仅负责触发任务,立即返回前端,前端通过轮询或WebSocket获取最终处理结果
  • 这种方式完全避开Server Action的超时限制,适合非实时场景

内容的提问来源于stack exchange,提问作者Evanss

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.03 23:12:04