tanszek:oktatas:informacios_rendszerek_integralasa:grpc
This is an old revision of the document!
gRPC
gRPC egy modern, nyílt forráskódú távoli eljáráshívást (Remote Procedure Call - RPC) megvalósító álltalános keretrendszer, amelyet a Google fejlesztett. Lehetővé teszi, hogy különböző platformokon és nyelveken írt alkalmazások egyszerűen kommunikáljanak egymással. gRPC protokollja alapértelmezetten Protocol Buffers-t (protobuf) használ.
Alapvető koncepciók:
- Szolgáltatások és metódusok: Egy .proto fájlban határozzuk meg a szolgáltatásokat, illetve azok távoli hívható metódusait.
- Kliens és szerver oldali kódgenerálás: Protobuf alapján automatikusan létrejönnek az interfészek és adattípusok.
Mintapélda
Hozzunk létre egy virtuális környezetet:
python -m virtualenv ./venv
Majd aktiváljuk:
./venv/Scripts/activate
Telepítsük a függőségeket:
python -m pip install grpcio python -m pip install grpcio-tools
Hozzuk létre a ./proto könvytárat és benne a IDL fájlt helloworld.proto néven:
syntax = "proto3";
// The greeting service definition.
service Greeter {
// Sends a greeting
rpc SayHello (HelloRequest) returns (HelloReply) {}
// Sends another greeting
rpc SayHelloAgain (HelloRequest) returns (HelloReply) {}
}
// The request message containing the user's name.
message HelloRequest {
string name = 1;
}
// The response message containing the greetings
message HelloReply {
string message = 1;
}
Futtassuk a stub generátort az alábbi paranccsal:
python -m grpc_tools.protoc -I ./protos/ --python_out=. .\protos\helloworld.proto
A helloworld_pb2.py fájl létrejön a
tanszek/oktatas/informacios_rendszerek_integralasa/grpc.1742586120.txt.gz · Last modified: 2025/03/21 19:42 by knehez
