gpt4 book ai didi

戈朗 : grpc call timeout

转载 作者:行者123 更新时间:2023-12-01 22:20:15 26 4
gpt4 key购买 nike

我正在使用下面的代码连接到 grpc 服务器,clientConn 对象用于所有后续的 rpc 调用。 maxDelay 设置为 5 秒。现在由于服务器出现问题,它没有响应 grpc 调用。所以我的客户每次 rpc 调用都等待很长时间。我需要以不同的方式设置超时吗?

    b := grpc.BackoffConfig{
MaxDelay: maxDelay,
}

clientConn, err := grpc.Dial(serverAddress, grpc.WithBackoffConfig(b), grpc.WithInsecure())
if err != nil {
log.Println("Dial failed!")
return err
}

最佳答案

您可以修改代码以使用 grpc.WithTimeout(5 * time.Second) 而不是使用 MaxDelaygrpc.WithBackoffConfig(b ) 用于重试和重试延迟。

clientConn, err := grpc.Dial(serverAddress, grpc.WithTimeout(5 * time.Second), grpc.WithInsecure())
if err != nil {
log.Println("Dial failed!")
return err
}

然而,上面的内容已被弃用,或者您可以使用 DialContextcontext.WithTimeout

ctx, _ := context.WithTimeout(context.Background(), 5*time.Second)

clientConn, err := grpc.DialContext(ctx, serverAddress, grpc.WithInsecure())
if err != nil {
log.Println("Dial failed!")
return err
}

关于戈朗 : grpc call timeout,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63955472/

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