我們的通信超過的郵件大小默認grpc-java限制:java-grpc:如何增加ManagedChannel中的郵件大小限制?
Caused by: io.grpc.StatusRuntimeException: INTERNAL:
Frame size 4555602 exceeds maximum: 4194304.
If this is normal, increase the maxMessageSize
in the channel/server builder
該限制可以增加,從https://github.com/grpc/grpc-java/issues/917看到:
集maxMessageSize()上的頻道/服務器製造商。
當試圖實現我們的代碼庫的修補程序,但是,目前尚不清楚,我該怎麼做,因爲不是所有的Channel
實現具有maxMessageSize
方法。
我們的代碼使用ManagedChannel
。設置代碼如下所示:
ManagedChannel channel =
ManagedChannelBuilder.forAddress(rpcHost, grpcPort)
.usePlaintext(true).build();
CatalogGrpcServiceGrpc.CatalogGrpcServiceBlockingStub stub =
CatalogGrpcServiceGrpc.newBlockingStub(channel);
CatalogRetrieverGrpcServiceAdapter grpcServiceAdapter =
new CatalogRetrieverGrpcServiceAdapter(
stub, metricRegistry);
也許我失去了一些東西,但我看不出如何增加的最大大小ManagedChannel
。只有OkHttpChannelBuilder
有它(OkHttpChannelBuilder#maxMessageSize
)。
問題:
- 我怎樣才能提高與
ManagedChannel
的消息限制? - 如果
ManagedChannel
不可能,我該如何重寫代碼以使用另一個支持增加默認限制的通道實現?