Golang gRPC Retry 未生效,不知是哪的问题,请教大佬,谢谢。
题目描述
使用 grpc.WithDefaultServiceConfig(RetryPolicy)
重试不生效。
题目来源及自己的思路
client
// 设置 retry 配置
grpc.WithDefaultServiceConfig(RetryPolicy),
// 重试配置
var RetryPolicy = `{
"methodConfig": [{ "name": [{"service": "hello.Hello"}], "waitForReady": true, "retryPolicy": { "MaxAttempts": 4, "InitialBackoff": "0.1s", "MaxBackoff": "1s", "BackoffMultiplier": 2.0, "RetryableStatusCodes": [ "UNAVAILABLE" ] } }]}`
server
func (h *HelloController) SayHello(ctx context.Context, in *hello.HelloRequest) (*hello.HelloResponse, error) {
return nil, status.Errorf(codes.Unavailable, "Unavailable")
}
你期待的结果是什么?实际看到的错误信息又是什么?
调用 SayHello
期待会出现重试,实际上没有重试。
请大佬指点,感谢!!!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论