2016-08-01 92 views
1

我正在使用Rpush gem(https://github.com/rpush/rpush)爲我的RoR項目之一推送GCM通知。我在Heroku上託管它。當我啓動我的rpush_daemon時,它開始並且很快就會顯示爲崩潰。當我檢查我的日誌,它什麼都不說清楚的問題 請找到日誌如下Heroku - rpush_daemon崩潰

heroku[rpush_daemon.1]: State changed from crashed to starting 
heroku[rpush_daemon.1]: Starting process with command `bundle exec rpush start --rails-env=production` 
heroku[rpush_daemon.1]: State changed from starting to up 
app[rpush_daemon.1]: * Booting Rails 'production' environment... ✔ 
heroku[rpush_daemon.1]: Process exited with status 0 
heroku[rpush_daemon.1]: State changed from up to crashed 

下面是我試過的命令,

heroku ps:restart rpush_daemon -a myApp 
heroku scale rpush_daemon=1 -a myApp 
heroku ps:restart -a myApp 

沒有什麼工作。

僅供參考:我已經爲Rpuush :: GCM和Rpush :: Apns創建了應用程序。 同樣在我的本地機器上工作正常

請幫我解釋出了什麼問題。

在此先感謝。

回答

0

由於rpush將作爲守護進程運行(當使用rpush start啓動時),heroku會崩潰該進程。根據Heroku文檔,任何作爲守護進程/後臺進程運行的進程都會被我的heroku本身崩潰。因此,在前臺啓動rpush必須解決問題。 您可以使用以下命令在前臺啓動rpush

bundle exec rpush start -f