是否可以在服务器中启用 GRPC 消息压缩?(蟒蛇)



我有一个gRPC客户端(用Java(向服务器发送请求(用Python编写(。我需要同时启用请求压缩和响应压缩。有关于如何在客户端启用压缩的良好文档。我已经设法像这样压缩请求:

response = blockingStub.withCompression("gzip").method(request)

但是,我找不到有关如何压缩服务器响应的任何文档(也(。似乎几乎没有关于如何在 Python 中使用 gRPC 消息压缩的文档(或示例(。如何启用服务器端压缩?该调用是一个简单的 RPC 调用(无流式处理(。

Python 中的压缩是通过元数据参数支持的。

您可以在此处找到示例: https://github.com/grpc/grpc/blob/master/src/python/grpcio_tests/tests/unit/_compression_test.py

要添加到 kpayson64 涵盖调用级压缩的答案中,您可以在初始化时通过通道 arggrpc.default_compression_algorithmgrpc.Channelgrpc.Server对象上设置压缩设置。

另请参阅 gRPC 压缩手册,了解有关在何处显式启用或不显式启用压缩的建议。

最新更新