繁体   English   中英

如何使用浏览器中运行的Silverlight处理许多(超过100个)并行HTTP请求?

[英]How can I handle many (more than 100) parallel HTTP-Requests with Silverlight running in a Browser?

我必须使用Silverlight应用程序执行100个并行HTTP请求。 不幸的是,并行连接受到浏览器的限制。

如果我启动Prozess,那么我将同时启动所有请求。 浏览器似乎只能处理大约10个并行连接(例如max-connections)。 所以其他所有人都在等待。 如果浏览器收到响应,它将处理下一个等待请求,依此类推。

我的问题是,最后的等待请求从未处理过。 有超时吗? 如果是,我可以控制超时吗?

如果实现自己的超时计时器,则如何启动它(Silverlight启动请求和浏览器处理该请求之间似乎存在间隙)。

我可以检测浏览器的“最大连接数”以将100个请求分成较小的块吗?

现在,我不建议这样做,但是如果您为同一服务器/网站创建多个子域名并平均分配负载,则每个服务器可以增加10个额外的呼叫。 IE浏览器。 www1.domain.com,www2.domain.com等。您经常会在Bing和Google地图上看到这种方法来快速加载许多图块。 但是正如其他人所说,一开始您的方法是错误的。 也许考虑只按需计算一行(IE,当用户请求特定的行进行计算时)。 使用TPL异步/等待扩展,将它分成n / 10个队列并逐个处理它们也很容易。

您可以在此页面上找到最大连接数的信息: http : //www.browserscope.org/?category=network

检查BrowserInformation以适应块。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM