以前から、人間と同じように夜眠るWebアプリがあってもよい、いや、あってもよいどころか、むしろかわいいんじゃないか、と思っていました。
6月にHerokuの無料枠が変更され、1日に18時間しか起動できなくなるそうなので、これを機に、Herokuで運用している自作Webアプリの「むびりす」を毎晩眠るようにしてみました。
今のところ、開発機のcronで寝かせたり起こしたりしています。
# 0時になったら寝かせる 0 0 * * * cd /path/to/app; heroku maintenance:on 1 0 * * * cd /path/to/app; heroku ps:scale web=0 # 7時になったら起こす 59 6 * * * cd /path/to/app; heroku ps:scale web=1 0 7 * * * cd /path/to/app; heroku maintenance:off
寝かせている間のメンテナンス画面は、http://a.noare.net/mvls/503 に置いているものです。
$ heroku config | grep MAINTENANCE_PAGE_URL MAINTENANCE_PAGE_URL: http://a.noare.net/mvls/503
普通のWebアプリだとこうはできないと思いますが、公開から2年経ってもユーザが2名だけ(ぼくと妻)だったので、躊躇なく進められました。さて、ぼくは喜ぶべきなんでしょうか。
追記(2019-01-11)
今は眠らせていません。経緯は忘れてしまったのですが、現状、ぼくのアカウントは月に1550時間まで無料になっています。なので、眠らせる必要がないのです。