Skip to content

Service de conversion de monnaie en appliquant les 4 modèles de GRPC

Notifications You must be signed in to change notification settings

aymaneisruby/Distributed-Systems-with-GRPC

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Distributed-Systems-with-GRPC

  • Objectifs :

Pour illustrer les quatre modèles de gRPC, nous allons prendre comme exemple un service de conversion de monnaie. Imaginons que nous ayons un microservice appelé "Bank Service" qui expose différentes opérations de conversion de devises.

  • Unary Model (Modèle unidirectionnel) :

Dans ce modèle, le client envoie une seule requête au serveur et attend une seule réponse. Dans notre cas, le client peut envoyer une requête avec le montant à convertir et les devises source et cible. Le serveur effectue la conversion et renvoie la réponse au client avec le montant converti. Ce modèle convient bien pour les conversions simples et rapides.

  • Server Streaming Model (Modèle de streaming côté serveur) :

Dans ce modèle, le client envoie une requête au serveur, mais le serveur renvoie une séquence de réponses. Dans notre exemple, le client peut envoyer une requête pour obtenir les taux de change entre différentes devises. Le serveur peut ensuite diffuser en continu les taux de change au client, lui permettant de recevoir les mises à jour en temps réel.

  • Client Streaming Model (Modèle de streaming côté client) :

Dans ce modèle, le client envoie une séquence de requêtes au serveur, mais le serveur ne renvoie qu'une seule réponse. Dans notre cas, le client peut envoyer plusieurs requêtes avec des montants à convertir. Le serveur attend de recevoir toutes les requêtes, effectue les conversions correspondantes et renvoie une seule réponse avec les montants convertis agrégés.

  • BiDirectional Streaming Model (Modèle de streaming bidirectionnel) :

Dans ce modèle, à la fois le client et le serveur peuvent envoyer une séquence de messages. Le client peut envoyer des requêtes de conversion de monnaie à mesure que les montants sont disponibles, et le serveur peut renvoyer les réponses de conversion correspondantes. Ce modèle est adapté lorsque le client et le serveur ont une interaction continue et ont besoin de communiquer de manière asynchrone.

Chacun de ces modèles de gRPC offre des fonctionnalités spécifiques pour répondre à différents besoins. Dans le contexte d'un service de conversion de monnaie, ces modèles peuvent être utilisés pour des scénarios tels que la conversion unique, le suivi des taux de change en continu, l'envoi de multiples conversions en lot, ou encore une interaction continue entre le client et le serveur pour des conversions dynamiques.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37

Releases

No releases published

Packages

No packages published

Languages