Amazon API Gateway Popular2015年〜
Un servicio completamente administrado para crear, publicar, gestionar y monitorear APIs
Qué hace
Amazon API Gateway es un servicio completamente administrado para crear, publicar y gestionar APIs REST, APIs HTTP y APIs WebSocket. Proporciona endpoints de API (puntos de entrada) y reenvía las solicitudes entrantes a servicios backend como funciones Lambda e instancias EC2. Con funciones integradas de autenticación, limitación de velocidad (throttling), caché y configuración de CORS, tiene todo lo necesario para operar APIs.
Casos de uso
API Gateway se utiliza para APIs backend de aplicaciones móviles y aplicaciones de página única (SPAs), como puerta de enlace de APIs en arquitecturas de microservicios, para publicar APIs a terceros, exponer funciones Lambda como endpoints HTTP y modernizar sistemas legacy con APIs, esencialmente cualquier escenario que implique servir APIs.
Analogía cotidiana
Imagínalo como la recepción de un hotel. Los huéspedes (clientes) comunican sus solicitudes a la recepción (API Gateway). La recepción dirige cada solicitud al departamento apropiado: servicio de habitaciones, limpieza o conserjería (servicios backend). Los huéspedes no necesitan saber cómo funcionan las cosas internamente; la recepción sirve como punto único de contacto.
¿Qué es API Gateway?
Amazon API Gateway es un servicio para crear y gestionar APIs a cualquier escala. Una API (Interfaz de Programación de Aplicaciones) es una puerta de enlace a través de la cual las aplicaciones intercambian datos. Por ejemplo, cuando una aplicación de smartphone obtiene datos de un servidor, envía una solicitud a través de una API y recibe una respuesta. API Gateway sirve como esta puerta de enlace, proporcionando funciones comunes como seguridad y control de velocidad de forma centralizada.
Tipos de APIs
API Gateway soporta tres tipos de APIs. REST API es la más completa en funciones, con capacidades avanzadas como gestión de claves de API, planes de uso y validación de solicitudes. HTTP API es una versión simplificada de REST API que cuesta aproximadamente un 70% menos y es ideal para integraciones con Lambda y backends HTTP. WebSocket API soporta comunicación bidireccional en tiempo real, siendo adecuada para aplicaciones de chat y dashboards en tiempo real.
Integración con Lambda
La combinación de API Gateway y Lambda es un patrón clásico de arquitectura serverless. API Gateway recibe solicitudes HTTP de los clientes, invoca la función Lambda correspondiente y devuelve la respuesta. Sin necesidad de gestionar servidores y con precios totalmente basados en pago por solicitud, escala de forma flexible desde APIs pequeñas hasta las de gran escala. Puedes aprender los fundamentos y patrones avanzados de la integración con Lambda en libros de referencia en Amazon.
Cómo empezar
Para comenzar con API Gateway, haz clic en "Crear API" en la consola de API Gateway. Selecciona el tipo de API, define recursos (rutas URL) y métodos (GET, POST, etc.). Especifica una función Lambda como destino de integración, y tu API estará lista en minutos. Haz clic en "Desplegar API" para desplegar en un stage, y se emitirá una URL pública.
Aspectos a tener en cuenta
- REST API and HTTP API differ in pricing and features, so choose the type that fits your requirements. HTTP API is more cost-effective for simple use cases
- Without proper throttling settings, backend services may be overwhelmed with excessive load
- The free tier includes 1 million REST API requests and 1 million HTTP API requests per month for 12 months