Can/Should一个httpread_timeout可以重试吗?
Can/Should a http read_timeout be retried?
我所在的网络通常会导致大量连接超时问题,偶尔我也会 运行 遇到读取超时问题。每当发生连接超时时重试代码可以解决连接到服务器的问题。每当我收到 read_timeout 时重试代码是否安全,或者响应是否会损坏?我正在使用 Ruby 和 Net::HTTP 客户端,但我想这也适用于其他语言。
A read_timeout 表示服务器没有在预期的超时时间内发送任何数据。响应损坏的可能性较小,因为这是 TCP。
要回答重试是否安全取决于您正在执行的操作and/or任何保证您正在与之交互的服务都会为您提供。
一般来说,重试 GET 应该是安全的。
POST/PUT 可能需要特殊处理(即在决定重试之前重新读取某些状态),因为这通常意味着服务器上发生了一些变化。
我所在的网络通常会导致大量连接超时问题,偶尔我也会 运行 遇到读取超时问题。每当发生连接超时时重试代码可以解决连接到服务器的问题。每当我收到 read_timeout 时重试代码是否安全,或者响应是否会损坏?我正在使用 Ruby 和 Net::HTTP 客户端,但我想这也适用于其他语言。
A read_timeout 表示服务器没有在预期的超时时间内发送任何数据。响应损坏的可能性较小,因为这是 TCP。
要回答重试是否安全取决于您正在执行的操作and/or任何保证您正在与之交互的服务都会为您提供。
一般来说,重试 GET 应该是安全的。 POST/PUT 可能需要特殊处理(即在决定重试之前重新读取某些状态),因为这通常意味着服务器上发生了一些变化。