Node.JS 寻找 socket.IO 的替代方案
Posted
技术标签:
【中文标题】Node.JS 寻找 socket.IO 的替代方案【英文标题】:Node.JS Looking for an alternative to socket.IO 【发布时间】:2010-10-12 04:49:40 【问题描述】:我已经测试 Node.JS 和 Socket.IO 几天了。我对实时应用程序感兴趣,这就是我测试 Socket.IO 的原因,问题是我在几个浏览器上发现了很多问题。 Chrome 总是可以运行,但 IE 和 Firefox 只能运行几次。
我的问题是,有没有办法在没有套接字(socket.io)的情况下将信息从服务器推送到客户端?我不想在客户端设置一个时间间隔,然后每隔“n”秒检查一次服务器端是否有变化。
【问题讨论】:
Socket.io !== websockets,还有其他的node websocket库,比如websocket-node github.com/Worlize/WebSocket-Node 【参考方案1】:Faye 是用于 Node.js 推送应用程序的 Socket.IO 的良好替代品。
来自 Faye 网站:
Faye 是一个易于使用的 发布订阅消息系统 基于 Bayeux 协议。它 为 Node.js 提供消息服务器 和 Rack,以及用于 Node 的客户端 和 Ruby 程序以及在浏览器中。
【讨论】:
【参考方案2】:您可以尝试长轮询。它相对简单,几乎可以在任何浏览器中使用。看看这个:
http://jsguy.com/?p=103
希望对你有帮助
【讨论】:
【参考方案3】:Socket.IO 最近出现了一些错误,但它们正在积极处理中,因此我鼓励您稍后再回来查看(它现在甚至可能已经工作得更好,因为几乎每天都有提交)。这是您应该关注的问题:http://github.com/LearnBoost/Socket.IO-node/issues#issue/63
【讨论】:
以上是关于Node.JS 寻找 socket.IO 的替代方案的主要内容,如果未能解决你的问题,请参考以下文章
Node.js - 如何从 app.js 外部发出 socket.io 事件?