2

我正在构建一个需要实时评论系统的 Rails 应用程序。我将使用 WebSockets,但我对它们很陌生,我有点迷路了。我试过em-websocketsand websocket-rails,但都不能很好地完成我必须做的事情。我也有一个 Node.JS 和 Socket.io 应用程序,但我不知道如何开始。

我想要做的是在create我的 CommentsController 的操作上对帖子发表新评论时发送 WebSocket 消息。我将发送一条包含评论内容和创建者以及帖子 ID 的消息。

提前致谢!:D

4

3 回答 3

2

对不起,但我不这么认为。小心使用 WebSocket。它是一个基本概念,提供了一个非常强大的机制。

Websockets 非常适合在线游戏等超级、绝对实时的应用程序。对于不需要它们的评论系统(甚至是实时的),AJAX 就足够了。

于 2012-06-16T14:02:17.527 回答
0

仅仅使用 websockets 作为唯一可用的传输方式并不是一个好主意,因为websockets 还没有在每个浏览器中都得到支持。幸运的是,例如Faye确实支持多种传输,因此它可以在每个浏览器中工作。过去我还发现了这个有趣的视频,它解释了如何将Faye 与 RailsCast 的 RoR 结合使用

于 2012-06-17T00:54:08.593 回答
0

如果您不想处理自己的实时基础架构、旧浏览器的回退、扩展复杂性等,您可以使用实时托管服务。

我最近在 Smashing Mag 上写了一篇关于构建实时评论系统的文章。它使用 PHP 和Pusher(我为之工作),但客户端和服务器之间的分离应该意味着您可以使用任何后端技术/服务。它还演示了如何逐步增强您的应用程序。

正如@Alfred 所建议的,用于实时通信的最常用的自托管 ruby​​ 技术似乎是Faye 。

于 2012-06-17T13:38:18.670 回答