API gateway vs BFF

Figura 1. API gateway (punto de entrada desde el exterior)

El patron API gateway es un MS que es el punto de entrada a la aplicación desde el mundo exterior. Es responsable de las solicitudes, composición de APIs, autenticación, translación de protocolos y otras funciones.

Sin embargo, es bastantante parecido al patron Backends for frontends (BFF) lo cual puede causar confusión. En el patron API gateway multiples equipos contribuyen al mismo código base (como se muestra en la figura 2), es decir, los equipos son responsables por su operación; lo cual va encontra de la filosofia de la arquitectura de microservicios "si lo construyes, lo posees". Mientras en el patron BFF se tiene una API gateway para cada cliente, donde cada cliente tiene un código en comun como se muestra en la figura 3.



Figura 2. API gateway compartiendo una capa en comun



Figura 3. BFF donde cada equipo tiene su propia capa de implementaciones

Referencias:

Microservices Patterns: With examples in Java (1st ed.). (2018). Manning.


 

Comentarios