Я получаю очень странное поведение с HttpWebRequest. Надеюсь, кто-то может мне помочь. У меня есть консольное приложение, которое выполняет некоторую агрегацию с помощью объекта HttpWebRequest для извлечения содержимого целевого сайта. Из-за характера требования приложение многопоточно и пытается сделать где угодно между 10 и 30 одновременными соединениями (я экспериментировал с рядом значений). Фактический веб-запрос структурирован следующим образом:
var req = (HttpWebRequest)WebRequest.Create(url);
WebResponse resp = req.GetResponse();
Stream s = resp.GetResponseStream();
var sr = new StreamReader(s, Encoding.ASCII);
string doc = sr.ReadToEnd();
sr.Close();
resp.Close();
return doc;
В любом случае странное поведение заключается в том, что при нормальных обстоятельствах приложение достигает около 120 запросов в минуту, но если я открою Fiddler, он скачет примерно до 600. Используя Windows 7 Resource Monitor, я могу увидеть увеличение активности сети соответственно. TCP-соединения для процесса консоли теперь перечисляют удаленный адрес как "loopback IPv4", а не IP-адрес целевого сервера (ожидается). Я действительно задавался вопросом о максимальном количестве одновременных HTTP-запросов, разрешенных машиной, но изменение этого в реестре, похоже, не имеет значения.
Итак, вопрос: что происходит с запуском Fiddler, который внезапно увеличивает пропускную способность в пять раз и как я могу добиться этого изначально на машине без необходимости запуска другого инструмента?
Спасибо!