Objectif(s)
  1. Faciliter les usages applicatifs
  2. Rendre un service orienté "confort d'utilisation" (ie. Performance)
Cible(s) 
Couverture


Principes

La Gateway API expose un ensemble d'interfaces REST pour les applications.

Elle est découpée en N couches similaires à un oignon.  

Cette architecture se base sur les principes suivants:

  1. Une API orientée Front. Les Endpoints sont dédiés aux périphériques et optimisés pour les usages.
  2. Une minimisation de l'usage du réseau.
  3. Une capitalisation des services sous-jacents.

Elle a été explicitée et mise en oeuvre par Netflix afin de simplifier et optimiser les appels. 

Accès direct IHM → Services (via API Back-Office)Accès optimisés IHM → Services (via API Front-Office)

 

Ce pattern d'exposition respecte l'organisation et la Classification des Services globale.

Séquence représentative de la médiation

Les API dédiées aux périphériques:

Une API fonctionnelle réutilisée:


actor iPhone
actor PS4

boundary "API iPhone"
boundary "API PS4"

iPhone -> "API iPhone" : /films/1234
activate "API iPhone"



"API iPhone" -> "API Films": /films/1234
activate "API Films"


database "DB Films"
"API Films" -> "DB Films"


"API iPhone" <-- "API Films": { film:1234, ... }
deactivate "API Films"


iPhone --> "API iPhone" : { film:1234, ... }
deactivate "API iPhone"


PS4 -> "API PS4" : /films/1234
activate "API PS4"


"API PS4" -> "API Films": /films/1234


PS4--> "API PS4" : { film:1234, ... }
deactivate "API PS4"