有没有官方的方法来支持grpc-java中的故障转移?

时间:2016-09-08 09:01:19

标签: java spring grpc-java

使用grpc-java时,是否有推荐的方法来支持故障转移?

例如,您连接到一台服务器,然后停机。你从中恢复的建议方法是什么?

我见过实验LoadBalancer课程。它是否打算解决问题?还有各种拦截器类,但我不知道如何使用它们来对连接错误做出反应。

我们正在使用grpc-spring-boot-starter,但我也没有看到故障转移支持。

我想避免的是处理业务类中的所有重新连接。例如,通过捕获异常并建立与下一个可用服务器的连接。如果可能,应该透明地处理。

1 个答案:

答案 0 :(得分:0)

这不是官方的依赖

https://github.com/yidongnan/grpc-spring-boot-starter

在客户端

@GrpcClient("gRPC server name")
private Channel serverChannel;

GreeterGrpc.GreeterBlockingStub stub = GreeterGrpc.newBlockingStub(serverChannel);
HelloReply response = stub.sayHello(HelloRequest.newBuilder().setName(name).build());

客户端请求将使用负载平衡。