Todo sobre Apple, Android, Juegos Apks y Sitios de Peliculas

Cómo utilizar API Gateway de AWS como interfaz para funciones Lambda

API Gateway es un servicio totalmente administrado para crear, probar y alojar API de producción. En lugar de alquilar un servidor EC2 y administrar su servidor API usted mismo, API Gateway puede manejarlo por usted y agilizar todo el proceso.

¿Qué es la puerta de enlace API?

API Gateway es esencialmente un proxy inverso, que recupera datos de otros servicios y los devuelve de forma estructurada. Sin embargo, en lugar de ejecutarlo usted mismo, la carga de manejar el tráfico y la infraestructura se pasa a AWS, quien puede hacerlo por un precio mucho más económico.

Básicamente, esto permite que API Gateway actúe como una “puerta de entrada” para muchos otros servicios de AWS. Por ejemplo, al conectarlo a AWS Lambda, puede crear un backend de microservicios sin utilizar ningún servidor EC2. La función Lambda se puede configurar para la conexión.

API Gateway hace un gran trabajo como interfaz básica para API HTTP de uso general, pero también es muy útil para administrar la estructura general y el esquema de las API REST. Al crear API REST, puede definir claramente todas las rutas y métodos, y conectarlos a cualquier servicio de AWS que desee.

API GateWay también se puede utilizar para administrar las API de WebSocket, que se utilizan para una comunicación rápida en tiempo real al abrir una conexión directa del servidor al cliente.

¿Cuánto cuesta API Gateway?

Para las API HTTP genéricas, API Gateway simplemente cuesta $1,00 por millón de solicitudes, después de superar el primer millón que viene con la capa gratuita.

Para las API REST, el precio es más alto, 3,50 dólares por millón de solicitudes. Opcionalmente, también puede optar por habilitar el almacenamiento en caché para su API REST, lo que mejorará el rendimiento a costa de una tarifa por hora basada en el tamaño de su caché.

Para las API de WebSocket, el precio es un poco diferente. Debido a que están destinados a mensajes cortos del servidor al cliente, solo se le cobra $1 por cada mil millones de solicitudes, 1000 es más barato por solicitud que los otros dos. Sin embargo, está limitado a cargas útiles de 128 KB y también se le cobran $0,25 por millón de minutos de conexión. Si tiene constantemente muchos clientes conectados a la API WebSocket, pagará por cada uno de ellos.

Sin embargo, una cosa a tener en cuenta es que, si bien no hay un cargo específico por la transferencia de datos, las API HTTP se miden en incrementos de 512 KB. Por ejemplo, una única solicitud de API que arrojara una respuesta de 1,5 MB se facturaría como tres solicitudes de API. Las API de WebSocket se facturan en incrementos de 32 KB. Esto puede fácilmente duplicar los costos de API Gateway si sus cargas útiles son particularmente grandes.

Por supuesto, si se conecta a otro servicio de AWS, tendrá que pagar todos los costos asociados con esos servicios (como los cargos por invocaciones de funciones Lambda), así como los cargos de transferencia de datos para mover datos fuera de AWS.

Configurar una API HTTP para conectarse a Lambda

Si bien las API REST ofrecen más herramientas organizativas para administrar la API en sí, son mucho más complicadas y cuestan bastante más. En su lugar, usaremos las API HTTP básicas, que son más fáciles de crear y conectar a Lambda.

Elija crear una “API HTTP” en el menú de creación. Lo primero que tendrás que configurar son tus integraciones; Las API HTTP admiten puntos finales HTTP y funciones Lambda. Puede agregar múltiples integraciones, lo que puede ser útil si desea que una función Lambda separada maneje cada ruta de su API.

A continuación, configurará las rutas para la API. Estos se pueden colocar en subURL como

 /users 

y llamará a diferentes objetivos de integración según el método con el que se conecta un cliente. Por ejemplo,

 GET /messages 

podría devolver una lista de mensajes, pero

 POST /messages 

podría subir un nuevo mensaje.

Probablemente querrás encontrar una forma de distinguir entre las API de desarrollo y producción. Puedes crear múltiples entornos en forma de “Etapas”, que servirán para este propósito. Por defecto, el

 $default 

El entorno se actualiza automáticamente con cualquier cambio y sirve como etapa de desarrollo. Probablemente querrás crear una etapa de “Producción” que puedas usar para impulsar cambios desde

 $default 

a.

Después de eso, su API debería estar configurada y lista para usar. En “Etapas”, encontrará la URL de invocación de su API. Esto está vinculado a la etapa de implementación de la API y permanecerá estático. Debería verse algo como lo siguiente:

https://api_id.execute-api.us-east-1.amazonaws.com

Si desea utilizar esto con un nombre de dominio personalizado, deberá generar un certificado ACM para vincular API Gateway de forma segura a su dominio y editar su configuración DNS para que apunte a la propia puerta de enlace. Si está utilizando la Ruta 53, este proceso se simplifica bastante.

En la pestaña “Autorización”, encontrará configuraciones para configurar su API con autenticación JWT. Actualmente, este es el único método compatible con las API HTTP.