Guía de entrevistas técnicas de Arquitectura de Software

Accede/Registrate para Descargar tu Guía

Lista de Preguntas


¿Qué es un Api Gateway?

Un API Gateway (Puerta de Enlace de API) es un componente en la arquitectura de software que actúa como intermediario entre las aplicaciones de cliente y los servicios backend. 

Su principal función es proporcionar una única interfaz de entrada (API) para múltiples servicios y funcionalidades, facilitando la gestión, la seguridad, la monitorización y la optimización del tráfico de la API.

Algunas de las funciones clave de un API Gateway incluyen:

Enrutamiento de solicitudes: El API Gateway direcciona las solicitudes de los clientes a los servicios backend correspondientes. Puede manejar la lógica de enrutamiento basada en la URL, los encabezados, o cualquier otro criterio definido.

Agregación de Datos: Puede combinar múltiples solicitudes de servicios backend en una sola respuesta, reduciendo la cantidad de solicitudes realizadas por el cliente y mejorando la eficiencia.

Transformación de Datos: Puede transformar y reformatear los datos según las necesidades del cliente o los requisitos del servicio backend. Esto permite la interoperabilidad entre diferentes versiones de API y formatos de datos.

Seguridad: Proporciona funciones de seguridad centralizadas, como autenticación y autorización. Puede gestionar el acceso a los servicios backend y proteger contra ataques comunes, como la inyección de SQL o ataques de denegación de servicio (DDoS).

Gestión de Versiones: Facilita la gestión de versiones de API, permitiendo a los desarrolladores introducir cambios sin afectar directamente a los clientes existentes.

Caching: Puede implementar estrategias de almacenamiento en caché para reducir la carga en los servicios backend y mejorar los tiempos de respuesta.

Monitorización y Registro: Ofrece capacidades de monitorización y registro para supervisar el rendimiento de la API, analizar patrones de tráfico y diagnosticar problemas.

Control de Tráfico: Puede implementar estrategias de control de tráfico, como la limitación de velocidad (rate limiting) para prevenir el acceso excesivo a los servicios backend.

Balanceo de Carga: Distribuye las solicitudes entre múltiples instancias de servicios backend para garantizar una carga equilibrada y la disponibilidad del sistema.

Gestión de Errores: Proporciona manejo centralizado de errores, generando respuestas apropiadas y facilitando la identificación y resolución de problemas.

El uso de un API Gateway simplifica la arquitectura de microservicios al centralizar las funciones de gestión de API, lo que facilita la administración y el mantenimiento. Además, mejora la seguridad y el rendimiento al proporcionar una capa de abstracción entre los clientes y los servicios backend.

 

Whatsapp Mentores Tech