部署新版本时,我希望我的服务器在实际发布并监听HTTP请求之前执行一些任务。
假设这些任务需要大约一分钟的时间,并设置了一些变量:在任务完成之前,我希望用户被重定向到旧版本。
基本上在服务器准备就绪之前进行一些nodejs工作。
我尝试了一种简单的方法:
doSomeTasks().then(() => {
app.listen(PORT);
})
但是,一旦新版本发布,所有任务期间的https请求都无法工作,而不是重定向到旧版本。
我已经阅读了 https://devcenter.heroku.com/articles/release-phase ,但这似乎只能运行外部脚本,对我来说并不好,因为我的任务正在设置缓存变量。
我知道这在App Engine中可以通过/check_readiness实现,但我想知道在Heroku上是否也可以实现。