0
我試圖在Heroku上託管我的Twitter機器人,每小時鳴叫一次。但是,當我嘗試部署,它給了我這個錯誤:Heroku R10啓動超時+ Node.js Cron
`Error R10 (Boot timeout) -> Web process failed to bind to $PORT within 60 seconds of launch`
我做了一些谷歌搜索,發現當您嘗試指定一個明確的端口,而不是使用process.env.$PORT
這通常發生,但我不指定任何在我的代碼,這在本質上只是這個港口:
var CronJob = require('cron').CronJob;
new CronJob('0 0 * * * *', function() {
//tweet once, once an hour
runTheBot();
}, null, true, 'America/New_York');
使用Twit其中runTheBot()
,使一些API請求。有趣的是,如果我設置cron作業運行頻率超過60秒,比如說每10秒鐘一次('*/10 * * * * *'),它就可以正常工作。它甚至可以運行,如果我每分鐘運行一次('0 * * * * *')。
這裏是我的Procfile:
web: node index.js -p $PORT
的Heroku是這個cron的庫不兼容?我應該用Heroku Scheduler代替嗎?