WebRequest.Create - Тайм-аут операции завершен - PullRequest
0 голосов
/ 17 мая 2011

Я пытаюсь отсканировать пару страниц на своем собственном сайте, но у меня истекает тайм-аут 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();
                   .....          
              }

         }                
     }
 }

Ответы [ 2 ]

0 голосов
/ 25 июля 2011

Попробуйте это (но только для вашей тестовой среды).

Keep-alive : true, если запрос к интернет-ресурсу должен содержать HTTP-заголовок Connection со значением

webRequest.KeepAlive = true;
webRequest.Timeout = 95 * 95 * 100000;

0 голосов
/ 14 июня 2011

Я бы попробовал установить webRequest.ServicePoint.ConnectionLimit = 100.

...