gRPC客户端超时

时间:2020-02-13 19:06:18

标签: grpc grpc-java

我正在寻找客户端的以下超时选项。换句话说,您如何设置这些时间的上限?

  1. 建立套接字连接所需的时间。
  2. 接收第一个响应数据包所花费的时间。
  3. 接收最后一个响应包所需的时间。

有一个deadline记录在案,但我不清楚上述三个中的哪一个对应于它。

我见过thisthis的帖子,但没有一个回答我的问题。

1 个答案:

答案 0 :(得分:0)

我对这个问题有点困惑。问题在于设置超时选项,而要点则与指标有关。我的回答是基于这个问题。假设#1是设置连接超时的方式,则可以通过NettyChannelBuilder进行配置。

NettyChannelBuilder(最常见)中,您可以通过NettyChannelBuilder#withOption传递频道选项。您可以在netty ChannelOption中查看已知的频道选项。

    ManagedChannel channel = NettyChannelBuilder
        .forTarget(target)
        // For other channel options see linked javadoc above
        .withOption(ChannelOption.CONNECT_TIMEOUT_MILLIS, (int) TimeUnit.SECONDS.toMillis(5))
        .build();

#2和#3需要更多说明,但听起来与截止日期有关。