ebb*_*ebb 3 c# windows dns multithreading
给定一个并行请求10000个URL的同时请求100个URL的应用程序,对于其中的50-5000个,我将收到以下错误消息:
远程名称无法解析为“ www.url.com”
我了解该错误意味着DNS服务器无法解析该网址。但是,对于每次运行,无法解析的URL数量都会更改(范围从50到5000)。
我发出太多请求的速度太快了吗?而且我还能做到吗?-在功能更强大的服务器上运行相同的测试,结果表明仅10个网址无法解析-听起来更加现实。
进行并行请求的代码:
var semp = new SemaphoreSlim(100);
var uris = File.ReadAllLines(@"C:\urls.txt").Select(x => new Uri(x));
foreach(var uri in uris)
{
Task.Run(async () =>
{
await semp.WaitAsync();
var result = await Web.TryGetPage(uri); // Using HttpWebRequest
semp.Release();
});
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1342 次 |
| 最近记录: |