2010-12-01 33 views
2

我会假设在客户端有一个调查更新的AJAX请求,但它是惊人的严格响应。有人可以提供更多的洞察他们可能在协议中做的任何技巧吗?通常在这种情况下使用Google gmail,docs等人如何获得其更改的推送通知?

+0

我相信gChat使用[Web套接字](http://en.wikipedia.org/wiki/WebSockets),其余使用[polling](http://en.wikipedia.org/wiki/Polling_%28computer_science% 29)与可变利率间隔(您使用它越多,轮询越多,空闲时间越长,等待时间越长) – zzzzBov 2010-12-01 21:54:59

+0

我喜欢该解决方案的声音。这是有道理的,并且与我的用户体验一致,即在一天中响应能力发生变化。 – mobibob 2010-12-01 22:22:11

回答

2

两种方法

  • 投票:Javascript代码轮询服务器每隔(例如)10秒看是否有一些新的消息显示

  • 永久连接:XMLHttpRequest请求由客户端执行,并且服务器保持连接,直到出现某种消息(在这种情况下向客户端回复数据),或者如果达到给定的超时时间,则客户端再次尝试,等等。

谷歌可能会使用第二个选项,它可以更快地回复和更新。