xmlhttp存在最大并发数,ajax设计应有所斟酌[zz]

本文通过测试揭示了不同浏览器(IE、Firefox、Opera)对于XMLHttpRequest并发请求的最大限制数量,并提供了一种优化策略来提高网站加载速度。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这次认真的测试了三种浏览器(ie/firefox/opera)的xmlhttp并发行为,发现如果用户同时发出很多xmlhttp 异步请求,那么浏览器不是一股脑全把请求发出去,而是存在一个最大并发数。我的机器测试发现,ie和ff里面是2,opera是4。

所以说,在设计一个站点时,让ajax页面同时载入数十个xmlhttp请求不是明智的做法。在考虑减少接口耦合的同时,也应该斟酌速度问题。实际上,可以使用某些细化的设计,可以把多种请求绑定到一起发送,从而达到优化的目的。

下面是我的测试代码:


 
function _getmicrotime() 
{  
    list($usec, $sec) = explode(" ",microtime());  
    return ((float)$usec + (float)$sec);  

function _exit($msg) 

    echo("$msg/n"); 
    exit(); 


$mode = $_GET["mode"]; 

$f = fopen("$mode.log", "a+"); 
if(!$f) _exit(); 

$begin = _getmicrotime(); 
$str = "$begin/t". $_GET["flag"] . "/t begin /n"; 
fwrite($f, "$str"); 
fclose($f); 
echo($str); 

sleep(2); 

$f = fopen("$mode.log", "a+"); 
if(!$f) _exit(); 
$end = _getmicrotime(); 
$str = "$end/t". $_GET["flag"] . "/t end /n"; 
fwrite($f, "$str"); 
fclose($f); 
echo($str); 

?> 


//这是.html网页代码:
 




 New Document 












************************************************
下面是测试结果:
IE的测试结果:
1157288179.03 2  begin 
1157288179.03 1  begin 
1157288181.03 1  end 
1157288181.04 2  end 
1157288181.05 3  begin 
1157288181.06 4  begin 
1157288183.05 3  end 
1157288183.06 5  begin 
1157288183.09 4  end 
1157288185.09 5  end 

firefox的测试结果
1157288092.36 1  begin 
1157288092.38 2  begin 
1157288094.36 1  end 
1157288094.38 2  end 
1157288094.39 3  begin 
1157288094.39 4  begin 
1157288096.4 4  end 
1157288096.42 3  end 
1157288096.42 5  begin 
1157288098.43 5  end 


opera的测试结果:
1157288410.88 1  begin 
1157288410.89 4  begin 
1157288410.89 2  begin 
1157288410.89 3  begin 
1157288412.89 1  end 
1157288412.89 2  end 
1157288412.92 5  begin 
1157288412.92 4  end 
1157288412.92 5  begin 
1157288412.92 3  end 
1157288414.93 5  end 
1157288414.95 5  end 
 
cited: http://sithere.net/article.asp?id=729&page=3
 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值