Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/465.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 聊天/论坛应用程序:长轮询还是iframe?_Javascript_Jquery_Comet - Fatal编程技术网

Javascript 聊天/论坛应用程序:长轮询还是iframe?

Javascript 聊天/论坛应用程序:长轮询还是iframe?,javascript,jquery,comet,Javascript,Jquery,Comet,我想创建一个类似google wave的网络聊天/论坛应用程序 当一个人正在键入一篇新文章或在其中嵌入一幅图像时,其他人正在现场观看 我读过不同的技术,我觉得长轮询和iframe是最受关注的 那么,我应该在这个应用程序中使用哪一个,为什么?我读过一些关于长轮询对于长更新间隔非常有用的文章。因为如果是聊天,那么每次击键都必须请求新数据..这就像在键入时每秒轮询一样。基于此,我应该使用iframe,以便始终只有一个连接 meebo/google wave使用的是什么技术?非iframe类技术统称为,

我想创建一个类似google wave的网络聊天/论坛应用程序

当一个人正在键入一篇新文章或在其中嵌入一幅图像时,其他人正在现场观看

我读过不同的技术,我觉得长轮询和iframe是最受关注的

那么,我应该在这个应用程序中使用哪一个,为什么?我读过一些关于长轮询对于长更新间隔非常有用的文章。因为如果是聊天,那么每次击键都必须请求新数据..这就像在键入时每秒轮询一样。基于此,我应该使用iframe,以便始终只有一个连接


meebo/google wave使用的是什么技术?

非iframe类技术统称为,由于您没有提到您想要使用的任何特定语言,您可以尝试使用最近发布的语言,并且您应该支持您想要做的事情。或者你可以直接深入到GoogleWave编程中,因为它似乎已经拥有了你想要的一切。就我个人而言,我总是发现所有的IFRAME解决方案有点不合理。

长轮询听起来是这种应用的好选择,但是您可能需要考虑在键击和服务器回调之间有某种延迟/缓冲期。它不需要很长的时间(不到一秒)就可以获得很好的速度增益

您可能还想考虑使用Adobe Flash作为客户端JavaScript和您自己的自定义通信协议之间的桥梁。这提供了更好的控制和更少的开销,但代价是客户端插件依赖性

最后,但至少不是,您可能需要考虑在谷歌WAVE之上建立应用程序。除非您是为了构建克隆而构建Wave的克隆,否则它可能会为您提供所需的大量基础设施


我不想说得太苛刻,但我认为你可能需要更深入地研究这个问题,当你有更具体的问题时再回来。

但问题是为什么我应该使用长轮询而不是iframe?因为使用长轮询,您必须在每次击键后请求新信息,以便其他用户看到这一点。但有了iframe,你就不必提出任何要求。它只是通过您当前的连接从服务器中推出的,对吗?我正在使用php。但是,如果我使用长轮询,这是否意味着我不必使用comet server?是的,我想你需要这样做,因为让HTTP连接保持更长时间的活动状态(目前)不是标准和实现的一部分。在PHP中,您可能已经遇到了最大执行时间为30秒的问题。。。那么你的连接无论如何都会丢失。我认为GoogleWave也在使用Java服务器+GWT。