【问题标题】:Java How to increase the message size of a grpc server in Spring BootJava 如何在 Spring Boot 中增加 grpc 服务器的消息大小
【发布时间】:2020-07-09 14:55:12
【问题描述】:

我有一个 Spring Boot 微服务,它使用 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) {
    ...
  }
}

【问题讨论】:

  • 您可以为此目的使用流式传输,而不是增加消息大小。

标签: java spring spring-boot grpc grpc-java


【解决方案1】:

像这样定义一个 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);
  }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-07-26
    • 2021-11-14
    • 2022-12-01
    • 2020-06-21
    • 1970-01-01
    • 1970-01-01
    • 2014-06-24
    • 2020-10-06
    相关资源
    最近更新 更多