socket.io WebSocket回退

4
我想使用dotcloud和node.js + socket.io来实现实时应用程序。
但是他们不支持websockets。
完全依赖回退,是否会有明显的带宽或性能下降?
值得使用自己的服务器吗? Linode或aws或其他什么。
谢谢。

Websockets确实更快。只有在专业环境中才值得使用(例如,对于玩具/原型,只需使用备用方案)。 - Raynos
1个回答

3

我正在实现一个完全依赖于websocket的即时通讯系统。由于网络发展很快,而且websocket已经成为了Web标准,因此我决定使用Flash websocket回退来支持默认不支持websocket的浏览器(如Firefox和Opera)。以下是您需要知道的内容:

  1. 我使用websocket。我使用pure websocket server,不使用其他协议,也不使用socket.io。我必须说,如果你决定仅使用websocket,则无法从socket.io库中获益,甚至是开发时间。这只会因为多个传输层支持而给您的服务器增加不必要的负担。

  2. 在客户端,我使用websocket + flash websocket fallback,它使用flash socket实现websocket规范,我可以说没有明显的区别。唯一需要知道的是,由于“同源策略”,您可能需要提供自己的flash套接字策略请求(默认运行在端口843上)以允许flash套接字连接。

  3. 我们目前使用私有服务器,因为我们有专门的系统管理员。然而,最好的方式是专注于您想要做的事情,而不是不需要的事情。哦,有时候,如果您完全控制自己的服务器会更好 :-)

希望对您有所帮助。


谢谢,这非常有帮助。抱歉回复晚了,你是否遇到任何与 socket.io 有关的问题,导致你没有使用它?我之所以问这个问题,是因为似乎 socket.io 是每个人都在使用的,而我从未考虑过不使用它。但我正在考虑跟随你的例子。 - Mark
我一开始也考虑过使用socket.io。然而,一旦在一侧(服务器或客户端)使用了socket.io,你就必须在两侧都坚持使用它。因此,你的“websocket”应用程序将与任何其他标准实现不兼容。这阻止了我继续深入研究。我认为socket.io适用于修复过时的互联网技术 :)。 - instcode

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