Javascript 请求之间的Ajax差异

Javascript 请求之间的Ajax差异,javascript,php,ajax,polling,ajax-polling,Javascript,Php,Ajax,Polling,Ajax Polling,想象一下,你有一个像facebook或G+这样的大型应用程序,有大量ajax短轮询 你有一个边栏,里面有不经常更新的新闻提要,你有通知,你有在线用户等等 现在,通常您所做的是为每一项创建一个sperate ajax请求,至少这是我所做的 现在我想听听您对合并这些请求并将它们作为JSON进行检索的看法。因此,让单独的函数处理它自己的数据 你认为,哪种方法是正确的?发送多个请求或使用数据检索高带宽 我非常喜欢合并我的请求,但从未见过这样的请求,我有一些缺点: 例如,当Ajax调用AR合并为一个,并且

想象一下,你有一个像facebook或G+这样的大型应用程序,有大量ajax短轮询

你有一个边栏,里面有不经常更新的新闻提要,你有通知,你有在线用户等等

现在,通常您所做的是为每一项创建一个sperate ajax请求,至少这是我所做的

现在我想听听您对合并这些请求并将它们作为JSON进行检索的看法。因此,让单独的函数处理它自己的数据

你认为,哪种方法是正确的?发送多个请求或使用数据检索高带宽

我非常喜欢合并我的请求,但从未见过这样的请求,我有一些缺点: 例如,当Ajax调用AR合并为一个,并且所有这些都有信息时,考虑案例。这不仅会对havy造成高带宽,而且还需要一些时间来更新DOM,可能会迫使浏览器出现故障。而且javascript将花费更长的时间

我应该担心这个吗?
您能考虑一下其他情况吗,为什么会这样吗?

如果您将数据拆分为多个请求,则设置缓存TTL会更容易。正确的方法是使用Comet如果您不想使用推送通知,我会将它们合并到一个请求中,以获得更流畅的用户体验,由于您通常被限制为两个并发ajax请求……例如,如果您有4个单独的更新请求,那么从一开始就有两个在队列中,如果用户同时调用另一个单独的请求,那么这将是第五个队列……这是一个架构问题,而不是任何问题,对于仪表板类型的系统,通常会将多个ajax请求合并为一个请求。一个有用的模式是futures/Promissions,它让您集中主要逻辑,而不是回调地狱。这里有一些框架可以帮助你,这是一篇关于未来/承诺的博客文章