Heroku 에 Deploy 시킨 App 들이 잘 동작하다가 30분정도 지나면 잘 끊기는 현상이 발생한다.

원인은 Heroku 내부에서 각 App 마다 동작하는 엔진인 dyno 가 30분이 지나면 sleep모드로 진입하여서 발생하는 현상이다.


Dyno 의 Sleep을 방지하려면 30분이전에 deploy 된 App URL 을 주기적으로 연결하여, sleep 모드에 돌입하지 않게 하는 여러 방법이 있다.

  • hubot-heroku-keepalive
    • Hubot 에서 사용가능한 모듈로 되어 있어서 config 설정시 HUBOT_HEROKU_KEEPALIVE_URL 을 넣어 주면 된다.
  • Kaffeine
    • Heroku Deploy URL을 넣어주면 해당 사이트에서 주기적으로 URL에 연결을 하여, sleep 모드에 돌입하지 않게 해주는 프로젝트

Reference: https://quickleft.com/blog/6-easy-ways-to-prevent-your-heroku-node-app-from-sleeping/

Posted by leechwin