작은 토이 프로젝트를 만들어
Heroku
에 배포하며 사용한(알게된) 것들을 기록합니다.
피드백은 언제나 감사합니다. (🙆♀️)
Heroku에 Deploy
된 나의 App은 30분간 traffic
이 발생하지 않으면 잠이들게 됩니다.
App이 잠들어 있더라도 요청이 들어오면 dyno manager
가 App 프로세스를 실행시킵니다. 이 과정에서 wakeup time이 발생하게 됩니다.
If an app has a free web dyno, and that dyno receives no web traffic in a 30-minute period, it will sleep. In addition to the web dyno sleeping, the worker dyno (if present) will also sleep.
기본적으로 개인 계정에는 월 550시간의 free dyno hours를 제공합니다. 신용카드를 등록할 경우에는 매월 추가로 450시간을 받기 때문에 총 1000시간동안 앱을 실행시킬 수 있게됩니다.
제공된 free dyno hours이 모두 소진되면 계정의 무료 앱들이 남은 기간(다음 달까지) 동안 모두 잠들게 되네요.
💡 앱이 잠자는 동안은 free dyno hours를 소비하지 않습니다.
Personal accounts are given a base of 550 free dyno hours each month. In addition to these base hours, accounts which verify with a credit card will receive an additional 450 hours added to the monthly free dyno quota. This means you can receive a total of 1000 free dyno hours per month, if you verify your account with a credit card.
30분 동안 접속자가 없으면 앱이 잠들었다 깨어나는 동안 wakeup time이 발생하는게 싫은 사람들이 있고, 이를 위한 서비스가 이미 여럿 존재합니다!
저는 Kaffeine이라는 서비스를 사용해서 저의 작고 소중한 토이프로젝트를 잠들지 않게 하려고 합니다.
(개인적으로 카페인이란 이름이 아주 마음에 들어요! 개발자에게 커피 수혈이 필요하듯 제 앱에서 카페인 주입이 필요하겠죵ㅋㅋ)
Kaffeine 사이트는 아주 쉽고 직관적이게 사용할 수 있습니다.
헤로쿠에서 배포한 앱 도메인을 입력하고 "Give my app a caffeine shot every 30 minitues"를 클릭해주시기만 하면 잠들지 않은 앱을 만들 수 있습니다!
💡 잠자는 시간 정하기
Free Dyno Hours를 초과하지 않기 위해 일정한 시간 동안 잠재울 수도 있습니다.
Kaffeine 설정에 'I want a bedtime!'을 체크하고 시간 설정을 하면 되는데, GMT 기준이기 때문에 한국 시간에 맞게 입력해주시면 됩니다! (한국 GMT+9)
Heroku Sleeping에 관한 자세한 사항은 여기를 읽어보세요.