【问题标题】:Can not receive all of request in web Api Service无法接收 Web Api 服务中的所有请求
【发布时间】:2018-02-26 16:11:42
【问题描述】:

我有一个 web api 服务,我应该收到 2500 万个请求,不幸的是我们只收到了 80000 个。

请告知问题应该出在哪里。

【问题讨论】:

  • 呃,获得更多客户?我不明白你的确切问题是什么......
  • 我认为你需要更多的服务器来服务这个流量
  • 根据@piet.t,您的问题不清楚您的代码架构问题或客户端是否存在,但他们无法获取您的 web-api。如果问题是您的服务器无法处理如此大量的请求,那么您需要应用 NLB 服务器,并为每个服务器创建比默认更多的工作进程。
  • 我实现了一个 Web 服务,其他人调用它并在其正文请求中发送数据,我接收它们并插入数据库。他们声称发送了 25000000 个请求,但我只能在我的数据库中看到 80000 个请求。我的问题在哪里?以及如何并行测试这些请求数量?
  • “他们发送 25000000” 我觉得这个说法有点可疑,但这一切都取决于请求到来的时间段。您可以尝试制作反向代理并监控请求和测试(如果它们的格式有效)。如果你在 IIS 上,你也有 IIS 日志。

标签: c# sql-server asp.net-web-api


【解决方案1】:

我尝试测试一下:

 Parallel.For(0, 1000000, i => { 

var request = (System.Net.HttpWebRequest)WebRequest.Create(URL); request.ServicePoint.Expect100Continue = false; var response = (HttpWebResponse)request.GetResponse(); var responseString = newStreamReader(response.GetResponseStream()).ReadToEnd(); });

在线程号之后。发送请求时发生 4200 错误。会不会是服务器iis配置造成的?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-01-06
    • 2018-01-01
    • 2014-10-25
    • 2013-11-08
    • 1970-01-01
    • 2021-03-02
    • 1970-01-01
    • 2017-05-17
    相关资源
    最近更新 更多