【发布时间】:2012-03-25 12:57:38
【问题描述】:
LearnBoost 似乎有一个名为engine.io 的新项目,理论上它似乎类似于socket.io。 1)在什么情况下您会使用其中一种与另一种? 2) 对于需要通过 node.js 进行基于 HTML5 套接字的通信的新项目,我们应该使用 engine.io 而不是 socket.io?
【问题讨论】:
标签: javascript html node.js socket.io
LearnBoost 似乎有一个名为engine.io 的新项目,理论上它似乎类似于socket.io。 1)在什么情况下您会使用其中一种与另一种? 2) 对于需要通过 node.js 进行基于 HTML5 套接字的通信的新项目,我们应该使用 engine.io 而不是 socket.io?
【问题讨论】:
标签: javascript html node.js socket.io
来自https://github.com/LearnBoost/engine.io
Engine 的主要目标是确保最可靠的实时通信。与之前的 socket.io 内核不同,它总是首先建立一个长轮询连接,然后尝试升级到更好的传输方式,并在侧面进行“测试”。
在 socket.io 项目的生命周期中,我们发现了依赖 HTML5 WebSocket 或 Flash Socket 作为第一个连接机制的无数缺点。
两者显然都是建立双向通信的正确方式,HTML5 WebSocket 是未来的方式。但是,为了满足大多数业务需求,替代的传统 HTTP 1.1 机制与提供相同的解决方案一样好。
【讨论】:
engine.io 是 socket.io 的新核心,因此请使用 socket.io,除非您需要其他 API :-) 根据这两个模块的作者的说法,引擎将被集成到 socket.io 1.0 中: http://groups.google.com/group/socket_io/browse_thread/thread/6e759a508b231b4
“接下来是什么
1.0 指日可待,它具有我们的下一代实时功能 核心,Engine.IO。 0.9 分支将只接收维护更新,以确保最大 稳定。 "
【讨论】: