[無料] Herokuのスリープモードをかんたんに阻止する方法

学習記録

はじめに

無料プランのHerokuは30分アクセスが無いとスリープモードになってしまい、次アクセスすると、立ち上がりが遅く、面接官が痺れを切らしポートフォリオを見てもらえない事も起こりかねません。
そこで対策として有名なのはHeroku schedulerを使う方法です。
この記事ではUptimeRobotを使った方法を選択します。

Heroku Schedulerの注意点

たしかにHeroku Schedulerでも良いと思うのですが、Herokuの無料プランを使用する場合は、1つのアカウントあたりすべてのアプリケーションやアドオンを含めて月に1,000時間までとなっております。1つのアプリだけなら、24時間 x 30(日) = 720時間で常時稼働することができます。
しかし、2つのアプリを作成して(無料枠なら最大5つまで)それを常時稼働させたいと思うのと、720時間 x 2(アプリ) = 1,440時間とオーバーしてしまいます。
1,000時間以上になった場合は、アプリはスリープモードになるので気をつけてください。
上記の理由から、Heroku Schedulerを選択する場合は将来的に課金する必要も出てくるのです。

UptimeRobotを登録

まずUptimeRobotを会員登録します。当然無料プランで構いません。

UptimeRobot: Free Website Monitoring Service
Start monitoring in 30 seconds. Use advanced SSL, keyword and cron monitoring. Get notified by email, SMS, Slack and more. Get 50 monitors for FREE!

次に左上の+Add New Monitorを押して、該当のアプリのURLを登録します。

「New Monitor」ページに行ったら、Monitor Type「HTTP(s)」を選択します。
2つ目の「Friendly Name」は適当にアプリの名前などを入力します。
3つ目の「URL(or IP)」HerokuアプリのURLを入力します。
4つ目の「Monitor Interval」はモニタリングのインターバル時間です。デフォルトでは5分間隔なので、特に変更しなくても良いです。
5つ目の「Monitor Timeout」はモニタリングのタイムアウトする時間で、1~60秒の間を設定できます。設定した時間に応答がない場合はお知らせしてくれるみたいです。デフォルトで30秒となっていますので、特に触らなくて良いです。
右上の「Select”Alert Contacts To Notify”」お知らせメールの受け取りを設定できます。
入力が終わったら右下のCreate Monitorをクリックして完了です!

サイトは50サイトまで無料登録できるので、当面の間はこれで大丈夫そうですね。

コメント