GRPC PYTHON ПРИМЕР

GRPC (gRPC Remote Procedure Calls) - это быстрый и эффективный способ взаимодействия клиента и сервера посредством удаленного вызова процедур. В данном примере рассмотрим создание GRPC-сервиса на Python.

Для начала необходимо установить gRPC, используя команду:

pip install grpcio

Затем необходимо создать файл с определением сервиса. Пример кода:

syntax = "proto3";package helloworld;// определяем сервисservice Greeter { // определяем метод SayHello rpc SayHello (HelloRequest) returns (HelloReply) {}}// прото-файл запросаmessage HelloRequest { string name = 1;}// прото-файл ответаmessage HelloReply { string message = 1;}

Затем необходимо скомпилировать файл протокола с помощью команды:

python -m grpc_tools.protoc -I. --python_out=. --grpc_python_out=. helloworld.proto

После этого можно создать сервер GRPC с помощью следующего кода:

from concurrent import futuresimport grpcimport helloworld_pb2import helloworld_pb2_grpcclass Greeter(helloworld_pb2_grpc.GreeterServicer): def SayHello(self, request, context): return helloworld_pb2.HelloReply(message='Hello, %s!' % request.name)def serve(): server = grpc.server(futures.ThreadPoolExecutor(max_workers=10)) helloworld_pb2_grpc.add_GreeterServicer_to_server(Greeter(), server) server.add_insecure_port('[::]:50051') server.start() server.wait_for_termination()if __name__ == '__main__': serve()

И клиент GRPC с помощью следующего кода:

import grpcimport helloworld_pb2import helloworld_pb2_grpcdef run(): with grpc.insecure_channel('localhost:50051') as channel: stub = helloworld_pb2_grpc.GreeterStub(channel) response = stub.SayHello(helloworld_pb2.HelloRequest(name='you')) print(response.message)if __name__ == '__main__': run()

В данном примере был рассмотрен базовый механизм работы GRPC на Python. Более подробную информацию можно найти в официальной документации по GRPC.

gRPC + Python + Microservices Complete tutorial With realife Usecase

Выполняем заказ на фрилансе / Сайт для отслеживания криптовалют на Python

Protocol Buffers Crash Course

Getting started with GRPC and python #1

Что такое gRPC за 10 минут

Python gRPC Tutorial - Create a gRPC Client and Server in Python with Various Types of gRPC Calls

gRPC — альтернатива REST API от Google. Пишем gRPC сервер и клиент на Java и Python.

BLGPG-507D82512915-24-09-20-00

Новые материалы: