だから私は POST リクエストをしなければならないプログラムを持っています。リクエストに時間がかかりすぎます。このコードは次のとおりです。
string entity = "some text in here";
byte[] _entity = Encoding.UTF8.GetBytes(entity);
Stopwatch sw = new Stopwatch();
sw.Start();
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(URL);
request.Method = "POST";
request.ContentLength = _entity.Length;
request.UserAgent = UserAgent;
request.ContentType = "application/json";
request.Accept = "application/json";
request.Headers["CustomHeader"] = "value";
request.Headers["AnotherCustom"] = "valueAgain";
request.Headers["AnotherHeader"] = "value";
request.Headers["AnotherOne"] = "value";
request.Referer = "referer";
using (Stream stream = request.GetRequestStream())
{
stream.Write(_entity, 0, _entity.Length);
}
WebResponse response = request.GetResponse();
string responseString = string.Empty;
using (StreamReader reader = new StreamReader(response.GetResponseStream()))
{
responseString = reader.ReadToEnd();
}
sw.Stop();
Console.WriteLine("took: " + sw.ElapsedMilliseconds);
プログラムが読み込まれると、次のように設定します。
ServicePointManager.DefaultConnectionLimit = 1000;
ServicePointManager.UseNagleAlgorithm = false;
ServicePointManager.Expect100Continue = false;
WebRequest.DefaultWebProxy = null;
速度を上げるために他に何ができますか?私も投稿しているサイトへの ping はわずか 5 ミリ秒で、アップロード速度は 10 mb/s ですが、リクエストには毎回約 400 ミリ秒かかります。
より少ないヘッダーを送信しても機能しますか?