在Heroku托管的Web服务中,Juggernaut/Faye与Pusher相比如何?

12
如果我理解正确的话,Juggernaut是建立在socket.io之上的,而Faye则竞争Juggernaut层和socket.io层的组合。最近Ryan Bates提出了一个叫做PrivatePub的Faye封装,使得运行Faye变得非常容易。
但是我已经有一个在Heroku上运行的rails应用程序,我想在其之上构建一个简单的聊天功能。
在研究过程中,我发现很多人都使用Pusher。看起来Pusher在Heroku上得到了很好的支持,所以我考虑使用Pusher。
在我跳入之前,我只是想确保我正确地理解了事情。Pusher像push请求的Heroku吗?我的选择是将所有东西都托管在Heroku上(包括Juggernaut或Faye模块),或者只将站点的静态部分托管在Heroku上,并将推送通知处理委托给Pusher。
据我所知,这感觉像是一种更有效的方法,因为: 1. 如果我使用Pusher,我就不必通过各种方式来运行Heroku上的juggernaut/faye模块。 2. 实时流量将被委托给Pusher,这意味着我不会浪费我的Heroku服务器资源。
现在我只是一个初学者,可能对很多事情都不了解,请给我指点。上述两个因素是否正确?我的Juggernaut/Faye/Pusher的理解是否正确?
2个回答

11
感谢您询问在Heroku上使用Faye/Socket.IO/Juggernaut/Pusher的相关问题。我会尽力回答您的问题。所以,您已经在Heroku上运行了一个Rails应用程序。您需要了解更多关于如何通过始终连接添加实时更新的路径。您列出的所有选项都可以实现此目的。Faye/Juggernaut将需要一些时间进行设置,但提供相同的最终结果。而Pusher就像是自己的Heroku,与Heroku分开,并且很容易添加到您的应用程序中。
您的问题和答案:
1. Pusher是否像用于推送请求的Heroku?:是的。Pusher是一个单独的服务,具有单独的定价模型,与您的主要Heroku账单分离。(尽管Heroku+Pusher合并为单个月度报表)
2. 实时流量将委托给Pusher,不会浪费您的Heroku资源:是的。
3. 上述两个因素是否正确?:是的。
4. 我对Juggernaut/Faye/Pusher的理解是否正确?:是的。
如果您想了解更多关于Faye、Ryan Bates和实时内容的信息,请参考以下链接:

0

您可以在Heroku上运行Juggernaut Node.js服务器。 如果您正在使用Juggernaut gem,则可能需要在原始Heroku应用程序和Juggernaut应用程序之间共享Redis数据库。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接