C#Http慢于浏览器(PostMan) - 任何想法?

时间:2016-06-15 21:44:51

标签: c# dotnet-httpclient

根据评论和更多测试完全更新

我正在使用PostMan(Chrome扩展程序)通过HTTP POST调用网络服务。通过C#做同样的事情会变慢。为什么,我不知道。也许没有什么可做的。

每次浏览器(PostMan)的响应时间约为70毫秒。 我在C#中做了不同的版本:

  • HttpClient(甚至重复使用相同的HttpClient,连续调用2x,只测量注释中建议的第二次调用的时间)。时间150ms最佳情况,通常为170毫秒。这实际上是第二次调用,不包括创建实例。只是POST和DL的答案。使用等待上传(POST主体)和下载响应,即使这对于此测试无关紧要。
  • WebClient,不包括设置客户端,只包括post请求和响应,没有解析,只是从字节转换为字符串,160ms。
  • 原始转移测试,只是为了检查本地计算机上的传输/开销,在任何情况下都没有测量:大约10毫秒。
  • 使用基于HttpWebRequest的其他客户端(ServiceStack v4的JsonServiceClient):大致相同。

我已经尝试过包含

System.Net.ServicePointManager.Expect100Continue = false;
System.Net.ServicePointManager.MaxServicePoints = 200;

但结果是一样的。

答案就是,Chrome(Postman构建的)只是比.NET更好的优化,还是有什么可以做的?

PS:是的,我知道这可能看起来更像是Q& A的讨论,但我正在寻找答案,所以从这个意义上说这是一个问题。

0 个答案:

没有答案