Netty gRPC:如何向NetyServer添加多个服务

Netty gRPC:如何向NetyServer添加多个服务,netty,grpc,Netty,Grpc,为了提供gRPC服务,我需要实现一个Netty服务器,并将我的gRPC服务添加到其中。在Java中,我做到了: Server server = NettyServerBuilder.forPort(port).addService(RetrieveServiceGrpc.bindService(new RetrieveServiceImpl())) .build().start(); 如果我有很多服务,我可能会有: .addService(....) //1st ser

为了提供gRPC服务,我需要实现一个Netty服务器,并将我的gRPC服务添加到其中。在Java中,我做到了:

Server server = NettyServerBuilder.forPort(port).addService(RetrieveServiceGrpc.bindService(new RetrieveServiceImpl()))
            .build().start();
如果我有很多服务,我可能会有:

.addService(....) //1st service
.addService(....) // 2nd service
.addService(....)
有没有更好的方法来实现这一点?e、 g:通过一些配置,添加某个文件夹下的所有服务

是的,建议使用多次调用addService来设置服务器。实现哪些服务通常很重要,添加新服务的次数很少,因此明确列出这些服务并不是一个坏主意

gRPC可以改进对依赖注入框架的支持,以注入服务,例如添加addServicesSet。然而,gRPC需要采取公正的方法,因为存在多个相互竞争的DI框架,开发人员可以强烈感受到他们的偏好。如果您对改善DI体验有任何建议,请随时联系。

您现在可以在服务类RetrieveServiceImpl上使用@GRpcService注释,方法是:

@GRpcService 公共静态类GreeterService扩展了GreeterGrpc.GreeterImplBase{ @凌驾 public void sayHellogreetOuterClass.HelloreRequest请求,StreamObserver响应Observer{ final GreeterOuterClass.HelloReply.Builder replyBuilder=GreeterOuterClass.HelloReply.newBuilder.setMessageHello+request.getName; responseObserver.onNextreplyBuilder.build; responseObserver.onCompleted; } } 这将负责调用addService方法以及其他事项

关于GitHub的文档: