8
votes

I currently have an app deployed on Heroku which runs on two web dynos so it won't go to sleep if it remains inactive for a certain time.

Now if I scale it down to only one web dyno (free) and instead pay for one worker dyno, will Heroku always keep my app active?

7

7 Answers

20
votes

It will still idle - you NEED to have more than a single web dyno

https://devcenter.heroku.com/articles/dyno-idling

12
votes

You can also use the New Relic add-on to monitor your app and keep it alive. There is a tab in settings to configure availability monitoring.

2
votes

You can also avoid a single web dyno from idling by using a monitoring service like pingdom.com since it's periodically sending a request to your web dyno.

1
votes

Try Pingdom. Free plans include one website check. I use this service to keep my app active all the time.

Pingdom tests your websites and other infrastructure components as often as every minute to make sure it is all up and running.

From Pingdom Homepage

Pingdom does this by "pinging" or rather requesting a resource from your website on a regular interval. This has the side effect of keeping your website "active", cache's primed, etc.. because your website is seeing regular "traffic" (the requests coming from pingdom).

1
votes

You can try http://kaffeine.herokuapp.com/ it will ping your app every 30 minutes so your app won't go to sleep.

0
votes

Try Un-idler. You don't need to sign in and it's free. http://unidler.herokuapp.com/

0
votes

Try CloudUp. It visits your apps periodically to keep them awake. It is free, and you can add as many apps as you want. It also activates apps on Google App Engine and Azure.