Использование keepalive соединения в grpc для blockingStubs - PullRequest
0 голосов
/ 15 октября 2019

Хотите включить опцию поддержания соединения для вызовов API gRPC. В текущем коде используются блокирующие заглушки (синхронные вызовы с использованием Java-клиента). Хотелось бы узнать, будут ли работать параметры поддержки соединения (описанные в ссылке ниже) с блокирующими заглушками?

https://cs.mcgill.ca/~mxia3/2019/02/23/Using-gRPC-in-Production/

Желаемое поведение - блокировка вызовов API должна завершиться сбоем в разумные сроки, если возникнут какие-либо проблемы с сервером (например, сбой или остановка сервера по какой-либо причине)

1 Ответ

0 голосов
/ 16 октября 2019

В grpc-java заглушки представляют собой тонкий слой поверх более продвинутого API (ClientCall / ServerCall). Тип заглушки не влияет на функции уровня канала. Опция keepalive channel будет работать независимо от типа заглушки.

Keepalive будет уничтожать ожидающие RPC при подключении к удаленному серверу, который аварийно завершает работу / зависает / и т.д. Он не уничтожает RPC, когда серверу просто требуется много времени для ответа на RPC.

...