デプロイしたherokuサイトが開くまでに時間がかかったのでスケジューラーを導入してみた

みなさん、こんにちどどどーん♪AOUNI(アオウニ)です。

この前、アオウニちゃんがあげていた、PubmedTrans開くまでに時間がかかってしまったんだけど・・・

最初のページを開くまでに重いというお問合せをいただいていて、調べてみたらスケジューラーという機能があるらしく、今回はそれを導入して改善を試みてみたよ。

このブログを読むとできるようになること

herokuのスケジューラーの使い方がわかるようになります

以前の記事で個人開発をしたPubmed Transを紹介しました。

https://blueninini.com/pubmedtrans/

通常:開くまで28秒も!

おっそい!😲

こんなの違うサイトにいっちゃいますよね・・・

herokuのスケジューラーを導入

スケジューラーとは?

指定した時間間隔で定期実行することができます。cronと似ています!

通常、何も導入していない時、WEBページを人が訪れないとサイトは寝てしまうようです(スリープモード)

そのため、1回1回寝ていたサイトを起こして立ち上げるというのを繰り返すので、開くまでに時間がかかってしまう。

そこで、スケジューラーで定期的にサイトにアクセスしていくことで、寝ずに保ってくれるため、開いた時の起動時間が短くなるよーというものです。

導入してみた

まずはコードをターミナルで入力。

# ①スケジューラーを開く
$ heroku addons:open scheduler

# ①'スケジューラーが複数ある場合
$ heroku addons:open <schedulerのID>

herokuが開き、下記のような画面となります。

Create Jobをクリック

そしてScheduleに every10minitues「10分に1回」、Enter a commandに python manage.py と入力します

最後に「save job」をクリック

終わり!とても簡単

さて、大事なのはページを開くのが早くなったか、ですよね

結果

導入後:開くまで21秒に!

7秒まいた!😲

これは成功なのかどうなのかはわからないが・・・

多くのアクセス数になれば、7秒は大きいと思う。

他にも原因はあると思いますので、他の原因を改善しつつ、スッと開けるように精進して参ります。

読んでくれてありがとうでした♪