将超时与后退策略一起使用有什么好处?

时间:2018-10-12 04:14:47

标签: networking grpc

我不了解超时和退避政策的使用。有人告诉我它有用,但我听不懂。

在这种情况下,超时将使服务尝试建立连接一段时间,然后放弃。 BackOff策略(指数后退)将尝试建立连接,如果失败,将等待一段时间,然后重试,如果失败,则等待相同或更长的时间。

如果BackOff策略将在超时后启动连接,那么超时有什么用?如果一项服务仅使用 后退,则我无法预见它与使用后退和超时的另一项服务之间的区别。有人可以解释优点吗?

谢谢

2 个答案:

答案 0 :(得分:1)

退避策略和默认超时是两个完全独立的选项,不会相互影响。

在gRPC的语义中,您建立与服务器的单个连接,然后在该连接上进行多个独立的请求。默认超时指示客户端在报告失败之前应让任何单个请求运行多长时间。另一方面,退避策略指示如果丢失单个连接,客户端应如何重新建立该连接。

答案 1 :(得分:0)

具有许多服务的网络中的故障可能触发许多重试。指数补偿可以减少恢复服务时的网络负载,并有助于防止重试本身成为问题的一部分。

为退避计时器添加随机性还有助于重试可能相互影响的重试。例如,它用于诸如以太网之类的共享媒体网络上,以减少两个节点检测到冲突并重新传输时重复冲突的机会。