HttpWebRequest çok yavaş!
Açık kaynak kodlu bir kütüphane benim web sunucusu bağlanmak için kullanıyorum. Web sunucusu çok yavaş gidiyordu endişelendim ve sonra Ruby basit bir test yapmaya çalıştım ve bu sonuçları aldım
Ruby program: 10 HTTP 2.11 saniye Alır
Ruby program: 100 18.13 saniye HTTP Alır
C# kütüphanesi: saniye 10 HTTP 20.81 Alır
C# kütüphanesi: 36847.46 saniye için 100 HTTP Alır
Profilli var ve sorun bu işlevi bulundu:
private HttpWebResponse GetRawResponse(HttpWebRequest request) {
HttpWebResponse raw = null;
try {
raw = (HttpWebResponse)request.GetResponse(); //This line!
}
catch (WebException ex) {
if (ex.Response is HttpWebResponse) {
raw = ex.Response as HttpWebResponse;
}
}
return raw;
}
Çizgiye ruby program yapma isteği 1 .3 saniye sürer ise kendisi tarafından tam 1 saniye içinde alır. Ayrıca ağ bant genişliği bir sorun değil yani 127.0.0.1, bütün bu testleri yapıyorum.
Bu büyük yavaşlamasına sebep ne olabilir?
GÜNCELLEME
Değişti kıyaslama sonuçlarına göz atın. Ben aslında 10 Alır ve 100, sonuçları güncelleme ile test ettik.
CEVAP
Yavaş web istekleri ile ana suçlu bulduk ne proxy özelliği. Eğer bu özelliği daha önce null olarak ayarlayın eğer sorgu proxy otomatik algılama adım atlar GetResponse yöntemi çağrısı:
request.Proxy = null;
using (var response = (HttpWebResponse)request.GetResponse())
{
}
Proxy otomatik Algıla 7 saniye yanıt dönmeden önce sorguya çekiyordu. Bu özellik HttpWebRequest nesnesi için varsayılan olarak ayarlanmış biraz can sıkıcı bir durum.
Çok yavaş sekmesini Güncellemelerinden...
VS 2013 çok yavaş neden...
Eclipse 3.5 (ve) yeni sekme geçiş çok ...
Nerede C kod yavaş R fonksiyonları hız...
Neden operatörler yöntem çağrıları dah...