多次调用同一Web服务阻止?

jqu*_*uth 10 c# asp.net asp.net-3.5

我们有一个页面向第三方网络服务发出请求.当负载很重时,响应时间会显着延长,但是第三方报告说处理时间保持不变.有时间表明,从他们收到请求到他们发送回来的时间总是大约1.5-2.0秒.现在我们正在经历超过20秒的等待时间.我对ASP.NET的理解是,每个请求都将在IIS线程池线程上运行,并向第3方服务返回并处理请求.所以我真的不明白我们可能阻止什么.有什么我想念的吗?IIS之外是否存在阻止的阈值限制?

如果我遗漏了一些内容,那么涵盖这个主题的实体书推荐也将是一个非常受欢迎的补充.

rea*_*idt 10

.NET限制根据HTTP规范的建议,对单个主机强制执行2个并发Web请求的限制.因此,在您的情况下,不是Web服务需要更多时间来执行,而是您的应用程序延迟了保持在此约束内的请求.

您可以通过将此密钥添加到配置文件来提高Web服务的限制:

  <system.net>
    <connectionManagement>
      <!-- specific servers... -->
      <add address="http://example.org" maxconnection="20" />

      <!-- ...or any server -->
      <add address="*" maxconnection="8" />
    </connectionManagement>
  </system.net>
Run Code Online (Sandbox Code Playgroud)