Skip to content

carlosfls/TodoServerlessSamProject

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Todo Serverless App

Aplicación serverless desarrollada en AWS utilizando Java y AWS SAM para automatizar el despliegue de la infraestructura.


Arquitectura

TodoGetter
    │
    ▼
   SQS
    │
    ▼
TodoRegister
    │
    ▼
DynamoDB

Monitoreo: AWS X-Ray

Tecnologías

  • Java 21
  • Maven
  • AWS Lambda
  • Amazon SQS
  • Amazon DynamoDB
  • AWS X-Ray
  • AWS SAM

Prerrequisitos

Antes de ejecutar el proyecto debes tener instalado:

  • Java 21
  • Maven
  • AWS SAM CLI
  • AWS CLI configurado
  • Cuenta de AWS

Construcción del proyecto

Compilar el proyecto y generar el archivo JAR:

mvn package

Despliegue

Para desplegar la infraestructura en AWS:

sam deploy --guided

Este comando creará automáticamente los recursos definidos en el archivo:

template.yaml

Ejecución

  1. Ingresar a la consola de AWS.
  2. Buscar la función Lambda:
TodoGetter
  1. Crear un evento de prueba:
{
  "id": "1"
}
  1. Ejecutar el test.

Flujo de la aplicación

TodoGetter
    │
    ▼
Amazon SQS
    │
    ▼
TodoRegister
    │
    ▼
Amazon DynamoDB

AWS X-Ray se utiliza para el monitoreo y trazabilidad de las invocaciones.


Entidades

DTodo

Representa la información de las tareas almacenadas en DynamoDB.

DUser

Representa la información de los usuarios asociados a las tareas.


Infraestructura

La infraestructura se define mediante AWS SAM utilizando el archivo:

template.yaml

Los recursos desplegados incluyen:

  • AWS Lambda
  • Amazon SQS
  • DynamoDB
  • Roles IAM
  • Permisos necesarios
  • Integración con AWS X-Ray

Autor

Carlos Lopez


Licencia

Este proyecto se distribuye únicamente con fines educativos y de aprendizaje.

About

Aplicación serverless desarrollada en AWS utilizando Java y AWS SAM para automatizar el despliegue de la infraestructura.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages