2016-11-17 4 views
0

Я получил веб-сайт, размещенный на сервере Heroku (я новичок в Heroku кстати), и как это под свободный пакет, он спит после 30м бездействия и поставить он в действии снова, когда пользователь ударяет его, он занимает около 7 секунд до npm run start.Избегайте Heroku сервера спать

Я думаю о запуске nodejs работу или что-то, что открыть веб-сайт каждый 29М, так что сервер никогда не спит, на начальном этапе, я получил что-то вроде этого:

(function wakeup() { 
    require('open')('https://mywebsite.herokuapp.com', (err) => { 
    if (err) throw err; 
    console.log('Woke up!'); 
    setTimeout(wakeup, 1740000); //29m 
    }); 
})() 

NB: Это просто открывает его в браузере, но не обрабатывая его закрытие.

  • Во-первых, это законно для этого обходного пути?
  • Во-вторых, если да, то какой лучший способ реализовать это?

ответ

4

Совершенно законно держать ваш свободный диноволк столько времени, сколько захотите, любыми средствами в вашем распоряжении. Просто отметьте, что ваше ежемесячное распределение free dyno hours ограничено. Если вы проверили свою учетную запись Heroku с помощью кредитной карты, у вас есть 1000 бесплатных динозанов в месяц, что более чем достаточно для того, чтобы один свободный веб-диновер «навсегда», не спал вообще. Очень простой способ сделать это просто настроить New Relic add-on для вашего приложения (используя бесплатный новый план Relic), который вы можете легко настроить для периодического пинга вашего приложения Heroku. Дополнительные способы предотвращения использования приложения Heroku на холостом ходу см. В разделе here.

+0

Спасибо @Yoni за ваш ответ! –