Un'applicazione scritta in Go che elabora email attraverso pipeline parallele utilizzando DynamoDB come storage principale.
La documentazione completa del progetto è disponibile nella directory docs/:
- Architettura Generale - Panoramica dei componenti principali e infrastruttura AWS
- Pipeline Parallele - Dettagli sui flussi di elaborazione degli email
- Database - Schema DynamoDB e pattern di versionamento
- Gestione Errori - Strategie di retry e gestione degli errori
- docker
- docker compose v2
- git
# Avvia le dipendenze per lo sviluppo
docker compose --profile devcontainer-deps up -d --build# Ferma le dipendenze
docker compose --profile devcontainer-deps down --remove-orphans# Esegui i test locali
/bin/sh ./run-tests-local.shUn report di coverage verrà esportato in .coverage/report.html
# Apri il report di coverage
open ".coverage/report.html"# Simula gli stage di deployment
/bin/sh ./run-tests-ci.sh- Database administration (dbadmin): http://localhost:9001
- SMTP (mailpit): http://localhost:9002
Il progetto utilizza CDK per il deployment su AWS ECS Fargate con:
- DynamoDB per lo storage dei metadati
- EFS per i file email
- CloudWatch e Datadog per il monitoring