当前位置:  开发笔记 > 编程语言 > 正文

最好的Ruby on Rails WebSocket工具

如何解决《最好的RubyonRailsWebSocket工具》经验,为你挑选了4个好方法。

我在Rails 3中开始了项目,我需要添加通知(比如Facebook一个).最好的方法是使用WebSocket作为iPad等支持设备,但我找不到任何好的工具来轻松地在Rails中实现它.我找到了Pusherapp,但他们的价格太高了,我也不认为向第三方公司提供我的数据是明智的.所以需要的东西:

开源

某种渠道支持

Rails的助手(并使用Rails 3)

小智.. 79

如果您正在搜索普通的WebSocket实现,那么EM-WebSocket可能是最好的.如果你想支持非闪存后备(如旧手机或iPhone 3G),你应该尝试Socket.IO-rack.

对于像Pusher这样的全功能实现(具有身份验证和通道),您有两个开源选择:Socky和Juggernaut.

Socky是一个使用EM-WebSocket(像pusher)的纯ruby项目,它有一些很好的Rails工具.另一方面,Juggernaut有更多的历史(以及更多的用户atm.)但新版本被重写为Node.JS(客户端仍然是基于ruby的)并且需要Redis.两者都应该工作正常.



1> 小智..:

如果您正在搜索普通的WebSocket实现,那么EM-WebSocket可能是最好的.如果你想支持非闪存后备(如旧手机或iPhone 3G),你应该尝试Socket.IO-rack.

对于像Pusher这样的全功能实现(具有身份验证和通道),您有两个开源选择:Socky和Juggernaut.

Socky是一个使用EM-WebSocket(像pusher)的纯ruby项目,它有一些很好的Rails工具.另一方面,Juggernaut有更多的历史(以及更多的用户atm.)但新版本被重写为Node.JS(客户端仍然是基于ruby的)并且需要Redis.两者都应该工作正常.


对于那些感兴趣的人,Juggernaut [现已被弃用](http://blog.alexmaccaw.com/killing-a-library).作者建议使用HTML5 [服务器端事件](http://www.html5rocks.com/en/tutorials/eventsource/basics/),并在deprecation-announcement链接中提供一个很好的评论.
作为@ Jeff评论的后续内容,Rails 4通过ActionController :: Streaming模块为SSE提供了内置支持.文档:http://api.rubyonrails.org/classes/ActionController/Streaming.html

2> Gonzih..:

看看王菲.


http://railscasts.com/episodes/260-messaging-with-faye
根据Ruby Toolbox的说法,截至2012年12月,Faye的受欢迎程度更高 - https://www.ruby-toolbox.com/categories/HTTP_Pub_Sub.

3> Adam Lassek..:

EM-WebSocket可能是最好的Ruby实现.事实上,Pusherapp是建立在它上面的.它与EventMachine集成.

这是一个如何使用它的教程.



4> Ivar..:

另一个可能满足您需求但稍微更深奥的选项是使用其中一个Jruby appservers并使用其中一个Java websockets实现.众所周知,码头(特立尼达的基地)拥有最好的支持网箱.另一个选项(非常酷)是使用带有websocket包装器的消息服务器来实现消息端点.例如,Torquebox(专用的Jruby/Rails应用程序服务器)内置了对HornetMQ的支持,而HornetMQ又支持websockets.

推荐阅读
女女的家_747
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有