Microservice avec Go et gRPC

Microservice avec Go et gRPC


gRPC client avec prototool

Nous allons commencer par tester notre service avec prototool. Prototool va permettre de transformer un json en protobuf et d'appeler le serveur gRPC.

Nous allons créer un fichier payload.json.

{ "text": "Salut les astronautes !", "language": "en" }

Nous allons maintenant appeler notre serveur gRPC.

cat payload.json | prototool grpc proto/translator.proto 0.0.0.0:4000 proto.Translator/Translate -

gRPC client avec Go

Nous allons créer un simple fichier client.go pour appeler le serveur gRPC avec le code qui a été généré.

// client.go package main import ( "context" "log" "google.golang.org/grpc" "translator-service/proto" ) func main() { conn, err := grpc.Dial("localhost:4000", grpc.WithInsecure()) if err != nil { log.Fatalln(err) } defer conn.Close() client := proto.NewTranslatorClient(conn) res, err := client.Translate( context.Background(), &proto.TranslateRequest{Text:"Salut les astronautes !", Language: proto.Language_en}, ) if err != nil { log.Fatalln(err) } log.Println(res.Text) }

Nous allons maintenant appeler notre serveur gRPC avec notre client en Go.

go run client.go

Auteur(s)

Quentin Neyrat

Quentin Neyrat

Back-end developer @ Eleven Labs

Voir le profil

Vous souhaitez en savoir plus sur le sujet ?
Organisons un échange !

Notre équipe d'experts répond à toutes vos questions.

Nous contacter

Découvrez nos autres contenus dans le même thème

Delta Lake avec Apache Spark

Créer un Delta Lake avec Apache Spark

Il existe différents formats de fichier pour stocker la donnée : parquet, avro, csv. Connaissez-vous le format Delta Lake ? Découvrons ensemble les fonctionnalités de ce format.

Comment recommencer une fonction avec un recul exponentiel ?

Recommencer une fonction avec un recul exponentiel

Il arrive qu'une fonction ou action ne puisse pas être réalisée à un instant donné. Cela peut être dû à plusieurs facteurs qui ne sont pas maîtrisés. Il est alors possible d'effectuer une nouvelle tentative plus tard. Dans cet article, voyons comment le faire.

Comment formater son code Python avec l'outil Black ?

Formater le code Python avec Black

Le formatage du code est une source de querelle entre les membres d'une équipe. Résolvons-le une bonne fois pour toute avec le formateur de code Black.