Sobes.tech
Junior — Middle

Pouvez-vous expliquer le principe de fonctionnement de gRPC et ses principales caractéristiques?

sobes.tech IA

Réponse de l'IA

gRPC est un cadre moderne pour l’appel de procédures à distance (RPC), développé par Google. Il fonctionne sur HTTP/2, ce qui assure une communication bidirectionnelle efficace, le multiplexage des flux et la compression des en-têtes.

Principales caractéristiques de gRPC :

  • Utilise Protocol Buffers (protobuf) pour décrire les services et sérialiser les données — un format compact et rapide.
  • Supporte plusieurs types d’appels : unary (une requête — une réponse), streaming serveur, streaming client et streaming bidirectionnel.
  • Fournit un contrat strictement typé entre le client et le serveur.
  • Permet de générer facilement du code dans différents langages de programmation.

Exemple d’un service gRPC simple en Go :

// Définition du service en protobuf
syntax = "proto3";

service Greeter {
  rpc SayHello (HelloRequest) returns (HelloReply) {}
}

message HelloRequest {
  string name = 1;
}

message HelloReply {
  string message = 1;
}

Après la génération du code, il est possible d’implémenter le serveur et le client en utilisant les interfaces générées.