是否可以从 channel 获取实际连接的端点? 我使用 nameResolverFactory 来获取我的 channel 的多个可能的端点。建立连接后我想知道与哪个端点。
最佳答案
channel 不提供在发出 RPC 之前了解正在使用哪个端点的方法。每个 RPC 可能使用不同的连接(例如,使用循环负载均衡器),因此这对于 Channel 来说不是一个有意义的问题。
但是,如果您执行 RPC,则在收到响应 header 后,您可以调用(例如,从拦截器)clientCall.getAttributes()
然后得到 Grpc.TRANSPORT_REMOTE_ADDR
。这会返回特定 RPC 使用的端点地址。
关于java - gRPC Java客户端: get connected endpoint,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56732814/