Я пытаюсь отсканировать пару страниц на своем собственном сайте, но у меня истекает тайм-аут webException ("Операция истекла") в моей рабочей среде, но не вмоя тестовая среда.Тайм-аут не появляется на одной странице дважды, но случайно и часто после некоторых запросов.После первого тайм-аута частота тайм-аутов возрастает.
Запрос Uristring на тестовой среде: http://localhost/Opgaver/Flytning/Haarde-hvidevarer/Bortkoersel-amerikaner-koeleskab-paa.aspx
Запрос Uristring на живой среде: http://www.servicebyen.dk/Opgaver/Flytning/Haarde-hvidevarer/Bortkoersel-amerikaner-koeleskab-paa.aspx
var webRequest = (HttpWebRequest)WebRequest.Create(requestUriString); webRequest.KeepAlive = false; webRequest.Timeout = 3 * 30 * 1000; webRequest.PreAuthenticate = false; using (WebResponse webResponse = webRequest.GetResponse()) //ERROR OCCURS HERE { using (Stream responseStream = webResponse.GetResponseStream()) { if (responseStream != null) { using (var reader = new StreamReader(responseStream)) { string readToEnd = reader.ReadToEnd(); ..... } } } }
Попробуйте это (но только для вашей тестовой среды).
Keep-alive : true, если запрос к интернет-ресурсу должен содержать HTTP-заголовок Connection со значением
webRequest.KeepAlive = true; webRequest.Timeout = 95 * 95 * 100000;
Я бы попробовал установить webRequest.ServicePoint.ConnectionLimit = 100.
webRequest.ServicePoint.ConnectionLimit = 100