Blogs

API gateway architecture for microservices

netflix, spotify, airbnb la importancia de un api gateway

Siguiendo con los anteriores artículos relacionados con los microservicios presentamos un nuevo diagrama de arquitectura de lo que se conoce como API-gateway. Que es una suerte de orquestador (y más) de las llamadas a distintos microservicios. En realidad las operaciones que realizan los microservicios suelen ser operaciones muy atómicas que aunque tienen valor de negocio necesitan ser orquestadas para poder representar una operación de negocio real.

Donde podemos ver a grandes rasgos la función de un API-Gateway. En el caso que nos ocupa en zylk.net para componer esta capa se va a usar, lo ya descrito anteriormente

Y el proyecto Hystrix de netflix. La idea es encapsular los servicios RCP con una capa de comandos hystrix para poder crear el API Gateway. Para la PoC que hemos definido se necesita

  1. Crear un primer comando hystrix que tarde en ejecutarse, pongamos 5 segundos
  2. Crear un segundo comando que tarde en ejecutarse 4 segundos

Una vez que tenemos esto, crearemos un cliente que invoque ambos comandos de dos maneras (existe una tercera basada en programación reactiva, que en este caso no vamos a usar) Síncrona

  • Síncrona

  • Asíncrona

Si ejecutamos ambos clientes podemos ver las diferencias de ejecución en ambos casos.

La verdad es que el proyecto hystrix de netflix es un gran proyecto que nos sirve para encapsular las llamadas a servicios de terceros. En este caso nos permite encapsular nuestros propios microservicios expuestos por yarn/avro-rpc. Además nos permite gestionar las asincronía y también implementa el patrón circuit-breaker, tan importante en los sistemas de información de nueva generación como los que empezamos a desarrollar en zylk.net

En este link os podéis descargar las 4 clases que se han usado para la PoC, para los que prefieren leer código.

Más entradas de blog

Visión general de una arquitectura de microservicios basada en yarn

Siguiendo con la evolución de las arquitecturas orientadas a servicios ... ahí va un gráfico...

El futuro de sinadura (sinadura 5)

El ecosistema de sinadura , que zylk.net lleva gestionando y dinamizando desde hace unos 7...

Añadir comentarios