我想创建这样的应用程序:

http://collabedit.com/

什么是创建这个实时应用的最有效的方法是什么?

闪光?长轮询? HTTP流?还是其他什么东西?

感谢;)

有帮助吗?

解决方案

有关现在,长轮询可能是最好的解决方案。众多大牌网站有长轮询的实现,包括Facebook,谷歌和eBay。并不是每个人都安装了Flash /在浏览器中启用。今后网络套接字或许能为我们做的是一个更容易的工作。

<强>更新在撰写本文时,所述网页套接字API 在最新的WebKit(铬/ Safari浏览器)和Firefox 4测试实施。还有歌剧院的公共快照生成可供下载与API的实现。这意味着测试API获得广泛应用。有关详细信息,请参阅此答案

其他提示

所有不同的方法有不同的优点和缺点,我不是分歧的专家,这就是为什么我会建议更换你的避免选择后,避免了开发和调整,每方法包括,避免在现有技术的未来变化,使用的库抽象使用的运输方法,并选择最好的方法基于客户机能力(即,作为HTML5网页插座的到来。):

http://socket.io/

这美妙的库,使创建实时的应用程序非常简单!和有各种服务器端实现:Python的(龙卷风),爪哇,谷歌GO,机架(红宝石),除了在Node.js的(服务器端JavaScript)的主流执行

我不认为长轮询是做彗星最有效的方式。无论如何,它发送响应后得到新的HTTP请求。它的成本比HTTP流传输多个额外的HTTP请求。

不过,长轮询可能会更可靠,比HTTP流更容易实现。根据这一文章在谷歌代码,HTTP流如果中间HTTP代理缓存的内容可能无法发挥作用。

有趣的是,Gmail不使用长轮询。与HTTP嗅探器的帮助下,很显然,它使用HTTP流的彗星。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top