Using the following code:
static void Main(string[] args)
{
ServicePointManager.DefaultConnectionLimit = 1000;
var client = new HttpClient();
var uris = File.ReadAllLines(@"C:\urls.txt").Select(x => new Uri(x));
foreach(var uri in uris)
{
var url = uri.ToString();
var task = client.GetStringAsync(uri);
task.ContinueWith(t => Console.WriteLine("Done {0}", url), TaskContinuationOptions.OnlyOnRanToCompletion);
task.ContinueWith(t => Console.WriteLine("Failed {0}", url), TaskContinuationOptions.OnlyOnFaulted);
task.ContinueWith(t => Console.WriteLine("Cancelled {0}", url), TaskContinuationOptions.OnlyOnCanceled);
}
Console.ReadKey();
}
I can at best request 15-20 urls concurrently, according to fiddler. All of these urls are unique and not pointing to the same host.
What is going on?