Risoluzione dei problemi relativi alle applicazioni serverless (Italiano) | Troubleshooting Serverless Applications (Italian)
Offered By: Amazon Web Services via AWS Skill Builder
Course Description
Overview
Panoramica del laboratorio
Panoramica
Un'API è un insieme di componenti collegati tra loro per creare un'applicazione. Ciò consente una facile scalabilità, gestione operativa e gestione del codice delle singole parti dell'applicazione. La creazione di API in un ambiente serverless consente di progettare componenti ottimizzati per funzionare su larga scala. Ciò consente anche all'utente di pagare solo per i servizi che utilizza. Questo è sicuramente un grande vantaggio, tuttavia i componenti disaccoppiati in un ambiente cloud possono essere difficili da individuare e correggere se si verifica qualche problema. AWS offre diversi strumenti progettati per facilitare l’identificazione dei problemi.
Obiettivi
Ecco cosa sarai in grado di fare dopo aver completato questo laboratorio:
- Comprendere un'architettura basata sugli eventi
- Abilitare e utilizzare AWS X-Ray e Amazon CloudWatch
- Capire come configurare AWS Step Functions per orchestrare applicazioni serverless
- Sfruttare i vantaggi di Amazon Simple Queue Service (Amazon SQS) e delle code dei messaggi non elaborati
- Comprendere come risolvere i problemi relativi alle architetture serverless
- Effettuare aggiornamenti della configurazione per ripristinare la funzionalità delle API
Prerequisiti
Per questo laboratorio è necessario:
- Accesso a un notebook dotato di Wi-Fi e Microsoft Windows, macOS o Linux (Ubuntu, SuSE o Red Hat)
- L'ambiente del laboratorio non è accessibile tramite iPad o tablet, ma si possono utilizzare questi dispositivi per accedere alla guida per gli studenti.
- Per gli utenti di Microsoft Windows, l'accesso al computer come amministratore
- Un browser Internet come Chrome, Firefox o Internet Explorer 9 (non sono supportate versioni precedenti di Internet Explorer)
Durata
Il completamento di questo laboratorio richiede 90 minuti.
Scenario
Questo laboratorio si basa su un'applicazione per la stampa di libri fotografici. L'applicazione consente ai clienti di caricare una raccolta di immagini che desiderano stampare come libro fisico. Ogni immagine viene elaborata per garantire che venga visualizzata correttamente nel libro. L'applicazione utilizza AWS Step Functions per gestire il flusso di lavoro che, a sua volta, utilizza le funzioni AWS Lambda per assicurarsi che ogni immagine sia del tipo di file corretto e Amazon Rekognition per garantire che il contenuto sia appropriato. Inoltre, il flusso di lavoro ridimensiona e filigrana le immagini e quindi genera un PDF di prova che il cliente deve approvare. Successivamente, Amazon Simple Notification Service (Amazon SNS) invia un'e-mail al cliente per l'approvazione prima di inviare il processo ad Amazon Simple Queue Service (Amazon SQS). Amazon SQS invia il libro al servizio di stampa di terze parti affinché sia stampato e spedito al cliente.
Sfortunatamente, l'applicazione nn è più funzionante a causa di un recente push del codice e i clienti ricevono diversi errori mentre tentano di fornire le immagini per i loro libri. Il tuo compito sarà quello di risolvere tutti i problemi e correggere l'applicazione.
Ambiente di laboratorio
L'ambiente utilizza Amazon API Gateway, funzioni Lambda, flussi di lavoro Step Functions, bucket Amazon Simple Storage Service (Amazon S3), tabelle Amazon DynamoDB e code Amazon SQS. Nell'ambiente sono stati introdotti diversi errori ed è necessario identificarli e risolverli.
API Gateway ospita diverse API in presenza di diverse funzioni Lambda. DynamoDB viene utilizzato per memorizzare i metadati relativi alle immagini caricate dall'utente. Viene avviato un flusso di lavoro Step Functions per convalidare le immagini ed effettuare il rendering per la stampa, prima di inviare un link (tramite Amazon SNS) all'utente per la verifica (questa operazione è automatizzata ai fini di questo laboratorio). L'utente potrà visualizzare in anteprima un PDF del libro prima di inviarlo a terzi per la stampa e la spedizione.
L'immagine seguente è un diagramma architetturale di alto livello dell'ambiente:
Fai clic qui per scaricare una versione ad alta risoluzione del diagramma architetturale.
L'immagine seguente è un diagramma dettagliato della macchina a stati per l'elaborazione delle immagini. Usa quanto segue per risolvere i problemi dell'applicazione:
Fai clic qui per scaricare una versione ad alta risoluzione della macchina a stati per l'elaborazione delle immagini.
Note sul diagramma della macchina a stati per l'elaborazione delle immagini:
#0: /batch - Questa API di API Gateway viene utilizzata per il test. Chiama una funzione Lambda che automatizza il processo di caricamento dell'utente contenuto nella casella arancione.
#1: /addAlbum - L'utente invia una richiesta di URL prefirmati per caricare le proprie immagini. L'utente utilizza gli URL prefirmati per caricare le proprie immagini direttamente su Amazon S3.
#2: /createBookBinding - L'utente chiama il processo di creazione del libro indicando di aver completato il caricamento delle immagini.
#3: /invocation - Il PDF viene approvato dal proxy che utilizza Lambda per i test.
Nota Per facilitare i test, è stata creata una funzione Lambda per generare automaticamente libri casuali. Ciò accelera il processo di test, generando più libri con diverse immagini ciascuno, in modo da poter identificare meglio i problemi dell'applicazione.
L'immagine seguente è un diagramma dettagliato della macchina a stati per l’elaborazione delle immagini:
Fai clic qui per scaricare una versione ad alta risoluzione della macchina a stati per la stampa di libri.
Tags
Related Courses
Building Modern Nodejs Applications on AWSAmazon Web Services via edX AWS ML Engineer Associate 3.3 Automate Deployment (Japanese)
Amazon Web Services via AWS Skill Builder AWS ML Engineer Associate 3.3 Automate Deployment (Korean)
Amazon Web Services via AWS Skill Builder Serverless Architectures on AWS
Amazon Web Services via Coursera AWS SimuLearn: Automate Fine-Tuning of an LLM
Amazon Web Services via AWS Skill Builder