AWS Lambda es un servicio de Amazon Web Services (AWS) que permite ejecutar tu código en respuesta a eventos sin tener que gestionar servidores. Es una forma sencilla y escalable de construir aplicaciones.
En este tutorial, te mostraré cómo utilizar AWS Lambda junto con tres servicios adicionales:
Al final, con la integración de estos servicios, habrás creado una Aplicación de Citas de Manifestación de Metas que envía mensajes inspiradores aleatorios para mantenerte motivado y enfocado en tus metas.
En este paso, configurarás todo lo necesario. Comienza por iniciar sesión en tu cuenta de AWS, luego instala Python si no lo tienes en tu IDE.
Amazon S3 (Simple Storage Service) es un servicio de almacenamiento que te permite guardar y acceder a cualquier cantidad de datos. Puedes usarlo para almacenar fotos, videos, documentos y respaldos.
SNS es un servicio de mensajería completamente administrado que facilita la comunicación entre aplicaciones o directamente con los usuarios.
Una Política IAM autoriza a Lambda a activar un evento y asegura que CloudWatch supervise los eventos de la aplicación.
Amazon Lambda es un servicio que permite ejecutar código sin gestionar servidores. Cargas tu código y Lambda lo ejecuta automáticamente cuando es necesario.
Ejemplo de código en Python:
import os
import json
import urllib.request
import boto3
def fetch_random_quote():
api_url = "https://zenquotes.io/api/random"
try:
with urllib.request.urlopen(api_url) as response:
data = json.loads(response.read().decode())
if data and isinstance(data, list):
quote = data[0].get("q", "No quote available")
author = data[0].get("a", "Unknown author")
return f'"{quote}" - {author}'
else:
return "No quote available."
except Exception as e:
print(f"Error fetching random quote: {e}")
return "Failed to fetch quote."
def lambda_handler(event, context):
sns_topic_arn = os.getenv("SNS_TOPIC_ARN")
sns_client = boto3.client("sns")
quote = fetch_random_quote()
print(f"Fetched Quote: {quote}")
try:
sns_client.publish(
TopicArn=sns_topic_arn,
Message=quote,
Subject="Daily Random Quote"
)
print("Quote published to SNS successfully.")
except Exception as e:
print(f"Error publishing to SNS: {e}")
return {"statusCode": 500, "body": "Error publishing to SNS"}
return {"statusCode": 200, "body": "Quote sent to SNS"}
Amazon EventBridge ayuda a conectar aplicaciones y servicios de AWS como SNS y Lambda.
Finalmente, sube tu código a GitHub y agrega documentación para explicar cómo funciona.
Si seguiste todos los pasos, habrás creado una Aplicación de Citas de Manifestación de Metas usando AWS Lambda, Amazon S3, Amazon SNS, y Amazon EventBridge. Esta aplicación obtiene citas motivacionales y las envía a los suscriptores de forma programada.
Los juegos gratis de Amazon Prime Gaming representan un atractivo significativo para los suscriptores de…
Si eres un amante de los videojuegos, estás de suerte. Hasta el 20 de noviembre…
La computación cuántica acaba de dar un salto gigante. John M. Martinis, recién galardonado con…
La biografía más vendida del cofundador de Apple, Steve Jobs; escrita por uno de los…
Hubo un tiempo en el que la “seguridad en el hogar” significaba confiar en un…
Elon Musk vuelve a romper todos los esquemas. Los accionistas de Tesla acaban de aprobar…