3

次の C# コードがあります。

for (var i = 0; i < 10; i++)
{
    var stopwatch = Stopwatch.StartNew();

    var request = (HttpWebRequest)WebRequest.Create("http://www.google.com/");

    var response = request.GetResponse();

    response.Close();

    Console.WriteLine(stopwatch.Elapsed.TotalMilliseconds);
}

IE (システム) プロキシ設定の [設定を自動的に検出する]チェックボックスをオンにすると、次の出力が得られます。

12164,0891
265,8832
248,4743
235,4291
239,6717
234,2011
236,3179
287,2781
239,5829
248,0245

チェックを外すと、これらの結果が得られます

991,2215
269,6613
241,1335
241,2875
234,1904
227,1039
226,7818
224,4154
227,6287
224,3641

ご覧のとおり、自動プロキシ検出を有効にすると、最初のリクエストに大きな影響があります。次の記事で説明されている回避策を実装しようとしましたが、役に立ちませんでした。

http://blogs.msdn.com/b/danielvl/archive/2009/03/23/faster-proxy-detection-for-httpwebrequest.aspx

最初のリクエストに対するこの影響を最小限に抑える (または取り除く) 方法はありますか? ユーザーのプロキシ設定を尊重する必要があるため、自動的に検出する設定を無効にすることはできません。

4

0 に答える 0