使用grpc-java时,是否有推荐的方法来支持故障转移?
例如,您连接到一台服务器,然后该服务器出现故障。您从中恢复的推荐方法是什么?
我看过实验LoadBalancer
课。是为了解决问题吗?还有各种拦截器类,但我不知道如何使用它们对连接错误做出反应。
我们正在使用grpc-spring-boot-starter,但我也没有看到故障转移支持。
我想避免的是处理业务类中的所有重新连接。例如,通过在此处捕获异常并建立与下一个可用服务器的连接。如果可能的话,应该透明地处理。
使用grpc-java时,是否有推荐的方法来支持故障转移?
例如,您连接到一台服务器,然后该服务器出现故障。您从中恢复的推荐方法是什么?
我看过实验LoadBalancer
课。是为了解决问题吗?还有各种拦截器类,但我不知道如何使用它们对连接错误做出反应。
我们正在使用grpc-spring-boot-starter,但我也没有看到故障转移支持。
我想避免的是处理业务类中的所有重新连接。例如,通过在此处捕获异常并建立与下一个可用服务器的连接。如果可能的话,应该透明地处理。
它不是官方依赖
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());
客户端请求将使用负载平衡。