【问题标题】:when does a client timeout starts?客户端超时何时开始?
【发布时间】:2019-01-10 15:18:24
【问题描述】:

好的,这是场景:

客户端在 10:00:00 (H:M:S) 发送请求。该请求存储在 IIS 应用程序池 QUEUE 中,直到该请求有可用线程。线程被释放,应用程序池现在收到了它必须处理的请求。时间是10:00:15。

客户什么时候开始等待他的回应——在 10:00:00 或 10:00:15?

【问题讨论】:

    标签: iis wsdl tcpclient dotnet-httpclient


    【解决方案1】:

    客户端超时时间从 10:00:00 开始。客户端不知道服务器内部发生了什么,甚至不知道网络延迟。它只知道何时发送请求以及何时收到响应(如果有的话)。

    虽然platform-specific message handler levelSendTimeoutReceiveHeadersTimeoutReceiveDataTimeout)可能存在更精细的超时,但在符合 .NET 标准的HttpClient 实现上定义的Timeout 是端到端的结尾。每Microsoft:

    HttpClient.Timeout 属性旨在完全符合您的要求 称为 99% 的情况:端到端超时,之后 请求过期。 WinHttpHandler API 旨在提供一个 对更高级场景的开发人员进行更深入的控制。持有 出于这个目的,我们对该类型有更细粒度的超时,因为 我们过去曾收到过要求控制权的开发人员请求 在请求的特定阶段。

    【讨论】:

    • 您确定没有确认请求正在处理的 http 或 tcp 握手吗?你的回答不是很具描述性。我想知道连接级别会发生什么
    • 抱歉,我认为您需要快速答复。添加了详细信息。
    • @vLr 这还不能回答你的问题吗?不知道您还在这里寻找什么。
    猜你喜欢
    • 2019-05-05
    • 2012-03-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-16
    相关资源
    最近更新 更多