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

Heroku免费版部署Spring Boot时@Scheduled定时任务能否唤醒休眠应用

核心结论

你配置的@Scheduled定时任务无法在Heroku免费套餐应用休眠时触发,也不能主动唤醒休眠的应用。
原因是Heroku免费dyno的休眠机制会在应用30分钟无外部访问时完全终止应用进程,而@Scheduled是Spring Boot进程内部的调度能力,进程停止后调度逻辑自然无法运行,且Heroku应用的唤醒只能通过外部HTTP请求触发,应用本身休眠时没有能力触发唤醒操作。

可行替代方案

  • 方案1:借助外部定时HTTP调用服务唤醒应用
    配置第三方定时任务,在每天凌晨2:58左右向你的Heroku应用的任意可用接口发送一次GET请求,触发应用启动,应用初始化完成后到3点即可正常执行内置的@Scheduled任务,无需修改原有业务代码,改造成本最低。
  • 方案2:使用Heroku官方Scheduler附加组件
    在Heroku应用的附加组件中启用免费版Scheduler,配置每天凌晨3点的触发规则,触发时可以调用你应用中封装了对应业务逻辑的HTTP接口,或是直接执行独立的任务脚本,是Heroku生态内的原生解决方案,稳定性更高。
  • 方案3:拆解定时任务为无服务函数
    将需要定时执行的业务逻辑单独拆分封装为Serverless函数,使用云厂商函数计算服务的定时触发器触发执行,绝大多数服务商的免费额度足以覆盖低频定时任务需求,完全不需要考虑应用休眠问题。
  • 方案4:升级Heroku付费套餐
    付费级别的dyno不会进入休眠状态,原有@Scheduled逻辑无需任何调整即可正常运行,适合不愿意调整代码架构、且可承担对应成本的场景。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 09:27:05