Можно ли включить сжатие сообщений GRPC на сервере?(Python) - PullRequest
0 голосов
/ 24 мая 2018

У меня есть клиент gRPC (на Java), отправляющий запросы на сервер (написанный на Python).Мне нужно включить сжатие запросов и сжатие ответов.Есть хорошая документация о том, как включить сжатие на стороне клиента.Мне удалось сжать запрос следующим образом:

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

Однако я не могу найти никакой документации о том, как сжать ответ сервера (также).Кажется, что почти нет документации (или примеров) о том, как использовать сжатие сообщений gRPC в Python.Как включить сжатие на стороне сервера?Вызов - это простой вызов RPC (без потоковой передачи).

Ответы [ 2 ]

0 голосов
/ 14 июня 2018

Чтобы добавить к ответу kpayson64 , который охватывает сжатие на уровне вызовов, вы можете установить параметры сжатия для объекта grpc.Channel или grpc.Server при инициализации через канал arg grpc.default_compression_algorithm.

Также см. «1010 * Руководство по сжатию gRPC » с рекомендациями о том, где или нет явное включение сжатия.

0 голосов
/ 13 июня 2018

Сжатие в Python поддерживается с помощью аргументов метаданных.

Пример можно найти здесь: https://github.com/grpc/grpc/blob/master/src/python/grpcio_tests/tests/unit/_compression_test.py

...