用ajax推送jQuery服务器端

我正在建立一个社交网络,我希望它像Facebook一样流畅。
就像你在控制台中查看并查看日志记录一样,它不会一直使用ajax调用进行更新。

在我的网站上我必须加载:通知(新通知的数量和通知本身),朋友请求(与通知相同),在线朋友(如果有任何在线它将加载在线用户的图片。)那6 ajax调用每10秒加载一次。 这会导致巨大的带宽浪费和服务器请求。

因此,我想,如果SERVER告诉客户端何时有新的更新,而不是客户端每10秒询问一次SERVER,该怎么办?

我已经搜索了这个问题并阅读了关于ajax推送和一个名为comet的框架。 我似乎无法找到有关如何在jQuery上实现这一点的任何信息。

我简短地看了一下Comet。 它似乎雄心勃勃,具有实验性,不会在任何旧服务器上运行。

据我了解,Comet并没有真正推动,而是做了一个名为“长轮询”的事情,我不会在这里描述。 网络已经有几个关于这个主题的好文本。

就个人而言,我会坚持使用当前的计划(传统的AJAX),但是要将所有必要的数据捆绑到一个对象和JSON编码中进行一次通用调用。 这将减少6个请求,减少到1个(每10秒)。

您可以通过返回返回的对象中的空值来获取智能,以获取未更改的信息,从而最大限度地减少每个响应的长度。

据我所知,您必须对您的网络服务器进行重大修改才能使这项工作正常进行。 此外,服务器端PHP不是一个很好的选择。

有人在这里问了类似的东西: 用PHP彗星?

您也可以在node.js上尝试socket.io. 它非常适合实时通信http://socket.io/