有一些 gRPC 调用需要连接保持连接超过 5 分钟,该连接将处于空闲状态,直到操作完成。
我尝试了 keepalive
设置,甚至 context.WithTimeout()
但 gRPC 连接在 5 分钟后超时(代码 = 未知 desc = 流超时")
如何增加此类 gRPC 调用的空闲超时?
正确答案
你尝试过吗
clientDeadline := time.Now().Add(time.Duration(*deadlineMs) * time.Millisecond)
ctx, cancel := context.WithDeadline(ctx, clientDeadline)
类似于grpc官方文档中的定义。这是https://www.php.cn/link/491723c615d42eb8b44650bcbe384561链接。