[Heroku]Freeプランでsleepにしない方法

手順

Heroku Schedulerのアドオンをインストール

アプリに対して10分おきに「起きてますか?」ってするようにcurlで確認する。
curl <アプリ名>.herokuapp.com

これで起き続ける模様。

ちなみに
heroku run系を使用すると別インスタンスで実行されます。
なので サーバーインスタンス + heroku run インスタンス で消費インスタンス時間が倍増えるので注意!
1000時間あるなら一ヶ月余裕じゃんとか思っていると痛い目をみます。
heroku run bashとか激ヤバなので必ずexitすること。

指定した時間だけは寝てもらう

if [ $(date --date "9hours" +%H) -ge 06 ]; then curl <アプリ名>.herokuapp.com; fi
とコマンドを10分おきにやっておけば24時から6時まではsleepすることもできます。
JSTに無理やり対応してます。
これで好きな時間だけ起こしておけます。
無駄に実行しなくてもいいですね!

参考

知っておきたい!Herokuを使う上では当たり前?の16の常識
Heroku の Dyno を寝かせない

スポンサードリンク