Puerta de enlace API

Una puerta de enlace API es un patrón de software que se encuentra frente a una interfaz de programación de aplicaciones (API) o grupo de microservicios, para facilitar las solicitudes y la entrega de datos y servicios. Su función principal es actuar como un punto de entrada único y un proceso estandarizado para las interacciones entre las aplicaciones, los datos y los servicios de una organización y los clientes internos y externos. La puerta de enlace API también puede realizar otras funciones para respaldar y administrar el uso de la API, desde la autenticación hasta la limitación de la tasa y el análisis.

Estas amplias capacidades hacen que la puerta de enlace API sea una pieza esencial de una estrategia de API empresarial.

¿Cómo funciona una puerta de enlace API?

Las API permiten que las aplicaciones independientes se comuniquen entre sí e intercambien datos dentro y fuera de una empresa. La puerta de enlace API proporciona un punto focal y una interfaz estándar para realizar estas actividades. Recibe solicitudes de fuentes internas y externas, llamadas "llamadas a API", y empaqueta varias solicitudes, las enruta a las API o API adecuadas, y recibe y entrega las respuestas al usuario o dispositivo que realizó la solicitud.

Las puertas de enlace de API también son clave para una arquitectura basada en microservicios, en la que las solicitudes de datos invocan numerosas aplicaciones y servicios que utilizan varias API dispares. Aquí, la función de la puerta de enlace API es similar: proporcionar un único punto de entrada para un grupo definido de microservicios y aplicar políticas para determinar su disponibilidad y comportamiento.

Las puertas de enlace de API a menudo manejan otras funciones relacionadas con API y microservicios:

  • traducción de protocolo
  • descubrimiento de servicio
  • lógica empresarial básica
  • aplicación de políticas de seguridad y autenticación
  • estabilización y equilibrio de carga
  • gestión de caché
  • monitoreo, registro y análisis

Puerta de enlace de API frente a proxy de API. Una alternativa a la puerta de enlace de API es un proxy de API, que es básicamente un subconjunto de una puerta de enlace de API que proporciona un procesamiento mínimo para las solicitudes de API. El proxy de API maneja la comunicación, incluida la traducción de protocolos, entre plataformas de software específicas, como un punto final de proxy y una API de destino. También puede controlar el flujo de tráfico entre los puntos de envío y recepción. Sin embargo, las puertas de enlace API suelen poseer mejores capacidades de análisis y supervisión del rendimiento.

Este artículo es parte de

Guía para crear una estrategia de API empresarial

  • Que también incluye:
  • 5 razones principales para adoptar una plataforma de gestión de API
  • 10 pautas de seguridad de API y mejores prácticas
  • Lista de verificación de pruebas de API y mejores prácticas

Descargar1

¡Descarga esta guía completa GRATIS ahora!

Puerta de enlace API frente a malla de servicios. Básicamente, la malla de servicios también facilita las comunicaciones desde y hacia los servicios de una empresa con algo de equilibrio de carga y otras funcionalidades. Sin embargo, una malla de servicios generalmente maneja las comunicaciones internas y su función está en el nivel de administración de la red; una puerta de enlace API facilita las interacciones con usuarios y dispositivos externos, así como con fuentes internas, y reside en la capa de aplicación. De esta manera, sus roles pueden ser complementarios: las puertas de enlace API pueden ser un punto de entrada a una malla, por ejemplo, mientras que algunas puertas de enlace API ofrecen complementos para formar una malla de servicios.

Un diagrama del patrón básico de puerta de enlace API

Un diagrama del patrón básico de puerta de enlace API

¿Quién usa las puertas de enlace API y por qué?

La puerta de enlace API es el punto focal para la mensajería API, para organizar y agilizar la actividad de la API y los intercambios con clientes internos y externos. Esa gestión y supervisión también permite que una empresa vea y controle una amplia gama de API e integraciones de forma centralizada, en lugar de intentar realizar un seguimiento y gestionar las API de forma individual. Las puertas de enlace API generalmente incluyen capacidades de monitoreo y registro para registrar y analizar llamadas y respuestas con el fin de garantizar la seguridad y evaluar errores.

Las puertas de enlace de API también pueden admitir otras funciones que gobiernan las API. Por ejemplo, los administradores de políticas utilizan declaraciones lógicas operadas a través de una puerta de enlace de API para determinar la disponibilidad y el comportamiento de la API, como la forma en que controla el flujo de datos o acelera las llamadas y el rendimiento de las llamadas a la API.

Las organizaciones que han adoptado una arquitectura basada en microservicios también confían en las puertas de enlace API para facilitar las comunicaciones entre esos servicios.

Las puertas de enlace API también juegan un papel para ayudar a optimizar la integración B2B como una alternativa a los enfoques heredados, como los servicios de intercambio de datos electrónicos.

Beneficios y desafíos de las puertas de enlace API

El principal beneficio de una puerta de enlace API es que estandariza y centraliza la entrega de servicios a través de API o microservicios. Más allá de esto, las puertas de enlace API también ayudan a proteger y organizar las integraciones basadas en API de una organización de varias formas.

  • Simplifique la prestación de servicios. Las puertas de enlace API pueden combinar varias llamadas API para solicitar y recuperar datos y servicios, lo que reduce el volumen de solicitudes y tráfico. Esto agiliza el proceso de API y puede mejorar la experiencia del usuario, particularmente para aplicaciones móviles.
  • Proporcione flexibilidad. Las puertas de enlace API son altamente configurables. Los desarrolladores pueden encapsular la estructura interna de una aplicación de múltiples formas, para invocar múltiples servicios de back-end y agregar los resultados.
  • Amplíe las aplicaciones heredadas. Las empresas que dependen de aplicaciones heredadas pueden utilizar puertas de enlace API para trabajar con esas aplicaciones e incluso ampliar su funcionalidad, como alternativa a una migración más amplia y complicada (y cara).
  • Contribuir al seguimiento y la observabilidad. La mayoría de las organizaciones confían en herramientas específicas para monitorear la actividad a través de API, pero una puerta de enlace API puede ayudar a ayudar en estos esfuerzos. Los registros de la puerta de enlace API pueden ayudar a identificar un problema durante un evento de falla de monitoreo.

La puerta de enlace de API es el guardián entre los consumidores y los proveedores de API, y ese rol amplio presenta desafíos únicos.

  • Fiabilidad y resiliencia. Cualquier impedimento u obstáculo para la funcionalidad de la puerta de enlace API puede provocar la falla de los servicios asociados. Las empresas deben tener cuidado de agregar funciones que afecten el rendimiento, especialmente porque la puerta de enlace API representa un paso de proceso adicional entre los clientes y las aplicaciones o los datos.
  • Seguridad. La puerta de enlace API es una fuente confiable que toca muchos rincones del negocio de una empresa. Si se ve comprometido, se trata de un problema de seguridad potencialmente grave y de gran alcance. Las empresas deben separar cuidadosamente las interfaces externas de las API y los sistemas internos, y definir los parámetros de autenticación y autorización.
  • Complejidad y dependencias. Los desarrolladores deben actualizar la puerta de enlace de la API cada vez que se agrega, cambia o elimina una API o un microservicio. Esto es particularmente desafiante en un modelo en el que algunas aplicaciones podrían convertirse en docenas o cientos de microservicios. La creación y el cumplimiento de reglas de diseño de API y microservicios pueden ayudar a mitigar estos problemas.

¿Cuáles son los diferentes tipos de productos de puerta de enlace API?

Dada la importancia central de la puerta de enlace de API en la economía de API actual, muchos proveedores ofrecen puertas de enlace de API como herramientas independientes o como funciones integradas en plataformas de gestión de API más amplias.

Ejemplos de proveedores de plataformas de administración de API que incorporan algún tipo de funcionalidad de puerta de enlace API incluyen Akana, Mulesoft, Postman, Tibco, Workato y otros.

Las organizaciones también pueden obtener y utilizar por separado determinadas herramientas de puerta de enlace API. Los ejemplos incluyen Apigee (ahora parte de Google Cloud), Express Gateway, Kong Gateway, Oracle API Gateway y Tyk API Gateway.

Los principales proveedores de nube pública ofrecen plataformas de administración de API: AWS API Gateway, Microsoft Azure API Management y Google Cloud Endpoints. También ofrecen herramientas de puerta de enlace API específicas para sus plataformas: Amazon API Gateway, Azure API Gateway y Google Cloud API Gateway (en versión beta a partir de enero de 2021).

Factores a considerar al evaluar una puerta de enlace API. Las empresas deben sopesar varios criterios al elegir una puerta de enlace API, incluidos los siguientes:

  • Propietario versus código abierto. Es posible que una empresa que evalúe la puerta de enlace API de un proveedor ya utilice otros productos de ese proveedor. Los ejemplos incluyen Oracle o los principales proveedores de nube pública (AWS, Microsoft Azure, Google Cloud). Por otro lado, muchas empresas se sienten cómodas con las herramientas de código abierto y el soporte interno.
  • Arquitectura. Algunas herramientas de puerta de enlace API enfatizan la simplicidad, mientras que otras enfatizan la extensibilidad. También suelen admitir diferentes sistemas de bases de datos, como PostgreSQL, Cassandra, Redis o MongoDB. Como se indicó anteriormente, las empresas que ya dependen de un proveedor de nube en particular pueden preferir la puerta de enlace API de ese proveedor.
  • Personalización. Algunas puertas de enlace API, en particular las opciones de código abierto, pueden ofrecer más capacidades de personalización, lo que requiere experiencia interna. Sin embargo, algunas puertas de enlace API se basan en diferentes lenguajes de programación, como Golang o Lua. Asegúrese de que las habilidades del personal de TI se alineen con cualquier requisito de este tipo. El uso de complementos puede mitigar parcialmente este problema.