Java 如何在 Spring 引导中增加 grpc 服务器的消息大小

Java How to increase the message size of a grpc server in Spring Boot

我有一个 Spring 引导微服务,它使用 LogNet/grpc-spring-boot-starter

通过 GRPC 进行监听

默认情况下,GRPC 负载的最大大小为 4MB。在客户端,设置响应负载大小很容易,但我想在服务器端增加请求大小。

在客户端,

ManagedChannel channel = 
   NettyChannelBuilder.forAddress(...)
                        .maxInboundMessageSize(NEW_MAX_MESSAGE_SIZE).build();

按服务器代码:

@GRpcService
public class FooService extends FooServiceImplBase {

  @Override
  public void foo(GetRequest request, StreamObserver<GetResponse> responseObserver) {
    ...
  }
}

像这样定义 ServerBuilderConfigurer:

@Component
public class FooServerBuilderConfigurer extends GRpcServerBuilderConfigurer {
  public static final int NEW_MAX_MESSAGE_SIZE = 100 * 1024 * 1024; // 100MB

  @Override
  public void configure(ServerBuilder<?> serverBuilder) {
    serverBuilder.maxInboundMessageSize(NEW_MAX_MESSAGE_SIZE);
  }
}