1

关于并发 ajax 请求,我查看了此页面:

流行的浏览器允许多少并发 AJAX (XmlHttpRequest) 请求?

但是如果 onload 我有 js 脚本用代码创建许多 http 对象怎么办:

// JavaScript Document
//declare xmlhttp object
var xmlhttp = false;
var xmlhttp2 = false;



//determine browser/connection type

if (window.XMLHttpRequest)
{
    xmlhttp = new XMLHttpRequest(); 
    xmlhttp2 = new XMLHttpRequest(); 
}
else if (window.ActiveXObject)
{
    xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    xmlhttp2 = new ActiveXObject("Microsoft.XMLHTTP");
}

我有大约 6 个不同的 js 脚本,这些脚本都是为执行略有不同的 ajax 功能而定制的。

我的问题是,如果我在页面加载时创建了 6-10 个不同的 xmlhttp 对象,这会不会是个问题?

此外,即使我有 20 个不同的定制 ajax 脚本,除了我上面提到的之外,只要我同时运行的不超过 3 个,它们都可以同时存在,只要它们使用不同的全局变量,对吗?

4

1 回答 1

1

您可以创建的此类对象的数量仅受可用内存的限制,即对于所有实际目的而言,它是无限的。正如您提到的问题中提到的那样,没有立即提供服务的那些会排队。实际上,这意味着您的应用程序可能需要很长时间才能加载。

我会尽量保持尽可能低的并发连接数(<5)。更多的连接会使用户体验更差。如果您有大量连接,服务器也可能会阻止您。

于 2012-11-01T22:17:29.237 回答