Heroku 使用 SIGTERM 计划 Dyno 重启

时间:2021-05-03 14:14:31

标签: heroku

我正在使用 Heroku 的 Scheduler 插件和一个简单的 shell 脚本来执行预定的 dyno 重启。 “restart.sh”脚本的代码如下:

echo "Restart in 2 minutes"
sleep 60

echo "Restart in 1 minute"
sleep 60

echo "Restart..."

curl -n -X DELETE https://api.heroku.com/apps/{APP-NAME}/dynos -H "Content-Type: application/json" -H "Accept: application/vnd.heroku+json; version=3" -H "Authorization: Bearer {TOKEN}"

脚本然后由调度程序使用以下命令执行: chmod +x restart.sh ; ./restart.sh

通常,当 heroku 自动重新启动一个 dyno 时,会在 30 秒后杀死进程之前发送一个 SIGTERM 信号。 现在我想扩展我的计划重启脚本,以便在实际重启 dynos 之前也发送一个 SIGTERM 信号。 据我所知,我必须识别进程,然后使用 kill 命令发送信号。但我无法弄清楚如何做到这一点。大家有什么建议吗?

提前致谢并致以最诚挚的问候

酷巴

0 个答案:

没有答案