如果延迟不是一个大问题,那么你应该使用许多优秀的AJAX/long-poll库中的一个。
WebSockets将为您提供最低延迟的浏览器通信。 WebSocket实际上相当通用,因为它们是一个WebSocket Flash仿真器web-socket-js,如果没有找到本地WebSocket支持,它可以自动加载。使用web-socket-js仿真将比本地WebSocket具有更高的延迟,但仍低于AJAX/long-poll。
就WebSockets可用性而言,Chrome和Safari支持本地WebSocket(版本03)。版本03也支持Firefox 4.0和Opera 11,但默认情况下是禁用的。自4.2版起,WebSockets本身也支持iOS。我在HyBi(WebSockets)工作组,并且解决了Mozilla和Opera的安全问题的协议的下一个迭代变得非常接近。 Mozilla和Opera正在积极研究实现,所以我预计最迟他们的下一个主要版本将默认打开WebSockets。但即便如此,Flash后备和iOS支持,WebSockets现在几乎无处不在。
如果你愿意在Javascript服务器端也做,那么我会推荐Socket.IO。它是一个node.js后端加上一个客户端JS库。如果浏览器支持它,它默认为WebSocket,包含web-socket-js Flash后备,如果WebSockets连接由于某种原因不起作用(或者您选择禁用WebSocket作为传输),则可以使用长轮询。
我肯定会对此做一点点阅读。非常感谢! – copyboy 2011-04-15 12:57:46