Scelta dell’evento per attivare la funzione
Quando devi decidere quale evento di CloudFront utilizzare per attivare un funzione Lambda, considera quanto segue:
- CloudFront deve memorizzare nella cache gli oggetti che vengono modificati da una funzione Lambda
-
Per memorizzare nella cache un oggetto modificato da una funzione Lambda in modo che CloudFront possa servire l’oggetto dalla posizione edge alla richiesta successiva, utilizza la richiesta origine o l’evento di risposta origine.
In questo modo, si riduce il carico sull'origine, la latenza per le richieste successive e il costo della richiamata di Lambda@Edge sulle richieste successive.
Ad esempio, se desideri aggiungere, eliminare o modificare intestazioni per oggetti restituiti dall'origine e vuoi che CloudFront memorizzi nella cache il risultato, utilizza l'evento di risposta origine.
- Desidero che la funzione venga eseguita per ogni richiesta
-
Per eseguire la funzione per ogni richiesta ricevuta da CloudFront per la distribuzione, utilizza la richiesta visualizzatore o gli eventi di risposta visualizzatore.
La richiesta e gli eventi di risposta origine si verificano solo quando un oggetto richiesto non viene memorizzato nella cache in una edge location e CloudFront inoltra una richiesta all'origine.
- Desidero che funzione modifichi la chiave della cache
-
Per modificare un valore utilizzato per il caching, utilizza l’evento di richiesta visualizzatore.
Ad esempio, se una funzione modifica l'URL per includere un abbreviazione di lingua nel percorso (ad esempio, perché l'utente ha scelto il linguaggio da un elenco a discesa), utilizza l'evento di richiesta visualizzatore:
-
URL nella richiesta visualizzatore - https://example.com/en/index.html
-
URL quando la richiesta proviene da un indirizzo IP in Germania – https://example.com/de/index.html
Puoi anche utilizzare l'evento di richiesta visualizzatore se stai eseguendo il caching in base a cookie o intestazioni di richiesta.
Nota
Se la funzione modifica cookie o intestazioni, configura CloudFront per inoltrare la parte applicabile della richiesta all'origine. Per ulteriori informazioni, consulta i seguenti argomenti:
-
- La funzione influisce sulla risposta dall’origine
-
Per modificare la richiesta in un modo che influisca sulla risposta dall’origine, utilizza l’evento di richiesta origine.
In genere, la maggior parte degli eventi di richiesta visualizzatore non viene inoltrata all’origine. CloudFront risponde a una richiesta con un oggetto che si trova già nella cache edge. Se la funzione modifica la richiesta in base a un evento di richiesta origine, CloudFront memorizza nella cache la risposta alla richiesta origine modificata.