gpt4 book ai didi

java - 调用服务时连接超时 VS 读取超时

转载 作者:行者123 更新时间:2023-12-03 21:20:11 25 4
gpt4 key购买 nike

我正在尝试使用 REST 模板从 Spring MVC 应用程序调用 REST API。
这样做时,我们必须设置超时值(连接超时和读取超时)并在 YML 文件中维护。

超时从 YML 读取并在初始化休息模板时设置。

例如,如果我有这样的场景:-
连接超时 = 5 秒,读取超时 = 3 秒

我的问题是什么时候会发生读取超时?

考虑到最坏的情况(在第 5 秒建立连接,在第 8 秒之后会发生读取超时吗[在第 3 秒收到响应]?)

这两个超时是否相互依赖?

我搜索了相同的内容,但是没有得到答案,因为我得到了信息,因为连接超时是为了建立连接,从连接读取时会发生读取,但是读取超时值是否包括连接超时值也不清楚。

这可能是基本问题,但是我很困惑,因此任何有关此问题的指导/指示都会有所帮助。

谢谢 !

编辑:我已经完成了“Spring rest template readTimeOut”,它说时钟在请求第一次命中该套接字时开始,并在其中任何一个先出现时停止:请求完成或达到 readTimeout 但我在建立连接时也理解会有命中套接字。这是否意味着 readtimeout 也包括连接超时?

最佳答案

它们彼此独立。
比方说 httpUrlConntection.setConnectTimeout(10000); httpUrlConntection.setReadTimeout(10000);所以我们在 TCP 握手发生之前有 10 秒的时间。一旦读取被触发,我们有 10 秒的时间来读取数据包。如果响应未完全传输,则抛出异常。
对于概念理解:
What is the difference between connection and read timeout for sockets?

关于java - 调用服务时连接超时 VS 读取超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52027333/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com