如何解决GRPC ConnectivityState无法正常工作吗?
FormatterNotRegisteredException: ExternalApi.Model.Transformed is not registered in resolver: MessagePack.Resolvers.StandardResolver
以上代码是GRPC客户端。它与grpc服务器建立连接。但是每次通道状态为空闲时?何时处于CONNECTING和READY状态?怎么了?
解决方法
需要等待另一个状态。
以下代码在服务器未启动时打印 connection state: TRANSIENT_FAILURE
,在服务器正常时打印 connection state: READY
。
gRPC 版本:1.24.0
ManagedChannel managedChannel = ManagedChannelBuilder
.forAddress("localhost",9090)
.usePlaintext().build();
ConnectivityState state = channel.getState(true);
while (state == ConnectivityState.IDLE || state == ConnectivityState.CONNECTING) {
state = channel.getState(true);
}
System.out.println("connection state: " + state.toString());
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。