Lambda@Edge è una funzione di Amazon CloudFront che ti consente di avvicinare l’esecuzione del codice agli utenti della tua applicazione, per migliorare le prestazioni e ridurre la latenza. Con Lambda@Edge, non devi occuparti del provisioning o della gestione dell’infrastruttura in località diverse in tutto il mondo. Le tariffe sono calcolate in base ai tempi di elaborazione, perciò non viene addebitato alcun costo quando il codice non è in esecuzione.
Con Lambda@Edge, puoi arricchire le tue applicazioni web distribuendole a livello globale e migliorandone le prestazioni, il tutto con zero amministrazione del server. Lambda@Edge esegue il tuo codice in risposta ad eventi generati dalla rete per la distribuzione dei contenuti (CDN) Amazon CloudFront. È sufficiente caricare il codice in AWS Lambda, che si fa carico delle azioni necessarie per eseguire e ridimensionare il codice con la massima disponibilità nella sede AWS più vicina al tuo utente finale.
Vantaggi
Creare applicazioni più reattive
Lambda@Edge esegue il tuo codice a livello globale nelle sedi AWS vicine ai tuoi utenti, affinché tu possa erogare contenuti ricchi di funzioni e personalizzati con elevate prestazioni e bassa latenza.
Nessun server da gestire
Puoi ridimensionare ed eseguire automaticamente il tuo codice nelle sedi AWS in tutto il mondo, senza essere tenuto ad eseguire provisioning, ridimensionamento o gestione dei server di origine in sedi diverse o configurare servizi di bilanciamento del carico o di instradamento DNS. Puoi aggiungere funzionalità senza apportare modifiche alle tue applicazioni esistenti in esecuzione nella tua origine. Infine, utilizzando Lambda@Edge e Amazon CloudFront, l’infrastruttura di origine da gestire è inferiore rispetto alle CDN tradizionali.
Personalizzazione dell’erogazione del contenuto
Con Lambda@Edge, puoi personalizzare il contenuto erogato tramite le CDN Amazon CloudFront e puoi personalizzare anche le risorse di calcolo e il tempo di esecuzione in base alle esigenze prestazionali dell’applicazione.
Come funziona
Casi d'uso
SEMPLIFICA E RIDUCI L’INFRASTRUTTURA ORIGINARIA
Puoi utilizzare Lambda@Edge come estensione o in sostituzione della tua origine. Ciò consente di eseguire moltissime operazioni, dalla semplice richiesta ed elaborazione della risposta HTTP a livello di edge location a una funzionalità più avanzata, come sicurezza del sito web, trasformazione dell’immagine in tempo reale, mitigazione dei bot intelligente, ottimizzazione del motore di ricerca e molto altro.
Sicurezza e privacy del sito web
Puoi attivare una funzione Lambda per aggiungere le intestazioni di sicurezza HTTP a tutte le risposte di origine senza dover modificare il codice applicativo sull’origine. Ciò consente di migliorare la sicurezza e la privacy per i tuoi utenti e fornitori di contenuti, mentre utilizzi CloudFront per erogare il contenuto a basse latenze.
Applicazione web dinamica a livello di edge location
Unendo Lambda@Edge ad altri servizi AWS, gli sviluppatori possono creare potenti applicazioni web a livello di edge location capaci di ridimensionarsi automaticamente per eccesso o per difetto, con zero infrastruttura di origine e zero sforzo amministrativo necessari per dimensionamento automatico, backup o ridondanza del data center.
Search Engine Optimization (SEO)
Puoi utilizzare Lambda@Edge per migliorare l’ottimizzazione del motore di ricerca (SEO, Search Engine Optimization) per il tuo sito web. Ad esempio, puoi avviare una funzione Lambda per distribuire una pagina HTML con rendering già preparato archiviata in Amazon S3 quando l’agente dell’utente è un bot motore di ricerca come Googlebot o Bingbot.
Instradamento intelligente tra origini e data center
Utilizzare Lambda@Edge per instradare dinamicamente le richieste a origini diverse in base alle diverse caratteristiche del visualizzatore consente di bilanciare il carico sulle tue origini, migliorando al contempo la prestazione per i tuoi utenti. Ad esempio, puoi instradare le richieste alle origini nell’ambito della tua regione, in base alla posizione del visualizzatore.
Mitigazione bot a livello di edge location
Lambda@Edge consente di bloccare i bot indesiderati a livello di edge location e di lasciare passare il traffico autorizzato. Tramite la mitigazione intelligente di questi processi automatici, puoi contribuire a proteggere la tua infrastruttura di origine da crawler e bot poco collaborativi migliorando al contempo le prestazioni per gli utenti effettivi.
MIGLIORAMENTO DELL’ESPERIENZA UTENTE
Lambda@Edge può contribuire a migliorare l’esperienza degli utenti con i siti web e le applicazioni in tutto il mondo, consentendoti di personalizzare per loro il contenuto senza sacrificare le prestazioni.
Trasformazione delle immagini in tempo reale
Puoi personalizzare l’esperienza dei tuoi utenti trasformando le immagini al volo sulla base delle caratteristiche degli utenti. Ad esempio, puoi ridimensionale le immagini in base al tipo di dispositivo del visualizzatore: mobile, desktop o tablet. Puoi anche salvare nella cache le immagini trasformate a livello di edge location CloudFront per migliorare ulteriormente le prestazioni nella distribuzione delle immagini.
Test comparativi
Puoi testare e proporre versioni diverse del tuo sito web agli utenti senza reindirizzamento o senza modificare l’URL del browser. In tal modo puoi rendere disponibili in modo trasparente gli aggiornamenti sul tuo sito web per migliorarne l’esperienza complessiva continuando a garantire la capacità di risposta per gli utenti.
Autenticazione e autorizzazione dell’utente
Puoi utilizzare Lambda@Edge per autenticare e autorizzare gli utenti al contenuto premium a pagamento presente sul sito web, filtrando le richieste non autorizzate prima che raggiungano l’infrastruttura di origine. Ad esempio, puoi avviare una funzione Lambda per autorizzare le richieste dei visualizzatori chiamando un servizio di autenticazione e gestione utenti come Amazon Cognito.
Assegnazione di priorità agli utenti
Lambda@Edge consente di controllare e assegnare la priorità nell’accesso al tuo sito web indirizzando gli utenti a pagine ed ad esperienze diverse. Ad esempio, puoi avviare una funzione Lambda che esegua del codice capace di assegnare la priorità agli utenti premium e a pagamento sul tuo sito web di e-commerce man mano che il traffico aumenta durante i saldi. Puoi anche reindirizzare altri acquirenti a una “sala d’attesa” temporanea: un sito alternativo con offerte di branding e di marketing dove possono attendere il loro turno per accedere al sito di vendita principale.
Monitoraggio e analisi degli utenti
Utilizzando Lambda@Edge e Kinesis insieme, puoi elaborare i dati in streaming in tempo reale per riuscire a monitorare e analizzare l’attività degli utenti distribuiti a livello globale sul tuo sito web e sulle applicazioni mobili, compresa l’analisi click stream.
Contenuto correlato
Interagisci con altri sviluppatori su Amazon CloudFront e Lambda@Edge nel forum di discussione.
Trova le risposte alle domande più comuni.
Nella nostra documentazione, puoi trovare altri dettagli sulla personalizzazione del contenuto a livello di edge location con Amazon CloudFront e Lambda@Edge
Inizia a lavorare con Lambda@Edge nella console AWS.