Questa pagina spiega come personalizzare le chiavi cache di Cloud CDN.
La modifica della configurazione delle chiavi cache potrebbe comportare un calo improvviso della percentuale successi cache se le nuove richieste iniziano a utilizzare chiavi cache diverse dalle vecchie voci delle chiavi cache. Allo stesso modo, la modifica del creatore della chiave cache non annulla necessariamente la convalida delle voci memorizzate nella cache se le nuove richieste utilizzano la stessa chiave delle vecchie chiavi cache. Per annullare la convalida delle voci memorizzate nella cache esistenti, consulta Annullamento della convalida dei contenuti memorizzati nella cache.
Prima di iniziare
Questa pagina presuppone la conoscenza di Cloud CDN, delle chiavi cache di Cloud CDN e dei servizi di backend con bilanciamento del carico. Ti consigliamo di rivedere queste pagine prima di procedere.
Abilita Cloud CDN e personalizza le chiavi cache
Segui queste istruzioni per attivare Cloud CDN per un servizio di backend con bilanciamento del carico e personalizzare la chiave cache. Se non hai ancora un bilanciatore del carico da utilizzare come origine, consulta la documentazione del bilanciatore del carico delle applicazioni esterno per istruzioni su come crearne uno.
I bucket di backend non includono nella chiave cache il protocollo o l'host perché questi non influiscono sul modo in cui viene fatto riferimento agli oggetti all'interno di un bucket Cloud Storage. Tuttavia, includono un insieme di parametri della stringa di query specifici per Cloud Storage, che potrebbero influire sulla risposta e potrebbero essere estesi tramite un elenco personalizzabile di nomi di parametri.
Console
Nella console Google Cloud , vai alla pagina Cloud CDN.
Fai clic sul nome dell'origine da aggiornare.
Fai clic su Modifica.
Se all'origine è collegato più di un bilanciatore del carico, seleziona quello che vuoi aggiornare dal menu Modifica.
Per espandere la sezione Prestazioni della cache, fai clic su Avanti.
In Chiave cache, seleziona Personalizzata.
Nella sezione Componenti chiave di cache, per impostazione predefinita sono selezionati tutti i componenti. Deseleziona le caselle di controllo per i componenti che vuoi escludere dalla chiave cache.
Fai clic su Fine.
gcloud
Per escludere uno o più componenti dalle chiavi cache per un servizio di backend, utilizza il comando gcloud compute backend-services update.
gcloud compute backend-services update BACKEND_SERVICE \
--no-cache-key-include-protocol \
--no-cache-key-include-host \
--no-cache-key-include-query-string
Per i bucket di backend, utilizza il comando gcloud compute backend-buckets update.
API
Per escludere uno o più componenti dalla chiave cache, specifica le opzioni di configurazione nella sezione cacheKeyPolicy di cdnPolicy per la risorsa backendServices.
Per i servizi di backend, utilizza la chiamata API al metodo backendServices.update.
PUT https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendServices/BACKEND_SERVICE
Per i bucket di backend, utilizza la chiamata API al metodo backendBuckets.update.
PUT https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendBuckets/BACKEND_BUCKET
Aggiungi il seguente snippet al corpo della richiesta JSON:
"cdnPolicy": {
"cacheKeyPolicy": [
{
"includeProtocol": false,
"includeHost": false,
"includeQueryString": false
}
]
}
Aggiorna le chiavi cache per aggiungere il protocollo, l'host e la stringa di query
Per impostazione predefinita, i servizi di backend configurati per utilizzare Cloud CDN includono tutti i componenti dell'URI della richiesta nelle chiavi cache. Se in precedenza avevi indicato che uno o più componenti devono essere esclusi, puoi seguire questi passaggi per includerli di nuovo.
Segui queste istruzioni per aggiungere il protocollo, l'host e la stringa di query alla chiave cache per un servizio di backend esistente con Cloud CDN già abilitato.
Console
Nella console Google Cloud , vai alla pagina Cloud CDN.
Fai clic sul nome dell'origine da aggiornare.
Fai clic su Modifica.
Se all'origine è collegato più di un bilanciatore del carico, seleziona quello che vuoi aggiornare dal menu Modifica.
Per espandere la sezione Prestazioni della cache, fai clic su Avanti.
In Chiave cache, seleziona Personalizzata.
Nella sezione Componenti chiave di cache, seleziona le caselle di controllo Protocollo, Host e Stringa di query.
Fai clic su Fine.
gcloud
Per aggiungere uno o più componenti alle chiavi cache per un servizio di backend, utilizza il comando gcloud compute backend-services update.
Eventuali flag non specificati rimangono invariati.
gcloud compute backend-services update BACKEND_SERVICE \
--cache-key-include-protocol \
--cache-key-include-host \
--cache-key-include-query-string
API
Per aggiungere uno o più componenti alla chiave cache, specifica le opzioni di configurazione nella sezione cacheKeyPolicy di cdnPolicy per la risorsa backendServices.
Aggiungi il seguente snippet al corpo della richiesta JSON:
"cdnPolicy": {
"cacheKeyPolicy": [
{
"includeProtocol": true,
"includeHost": true,
"includeQueryString": true
}
]
}
Aggiorna le chiavi cache per utilizzare un elenco di inclusione o esclusione dei parametri della stringa di query
Segui queste istruzioni per impostare le chiavi cache di Cloud CDN in modo che utilizzino un elenco di inclusione o un elenco di esclusione con i parametri della stringa di query.
Console
Nella console Google Cloud , vai alla pagina Cloud CDN.
Fai clic sul nome dell'origine da aggiornare.
Fai clic su Modifica.
Se all'origine è collegato più di un bilanciatore del carico, seleziona quello che vuoi aggiornare dal menu Modifica.
Per espandere la sezione Prestazioni della cache, fai clic su Avanti.
In Chiave cache, seleziona Personalizzata.
Nella sezione Componenti chiave di cache, seleziona la casella di controllo Stringa di query. Poi seleziona una delle seguenti opzioni:
Se vuoi specificare i parametri della stringa di query che devono far parte della chiave cache, seleziona Includi solo i parametri selezionati.
Se vuoi specificare che tutti i parametri della stringa di query, ad eccezione di quelli elencati, sono inclusi nella chiave cache, seleziona Includi tutto tranne i parametri selezionati.
Fai clic su Aggiungi parametro e specifica i parametri.
Fai clic su Fine.
gcloud
Per specificare un elenco di inclusione o un elenco di esclusione per un servizio di backend, specifica i parametri della stringa di query utilizzando il comando gcloud compute backend-services
update.
Utilizza questo comando per impostare il parametro della stringa di query user sull'elenco di inclusione di un servizio di backend.
gcloud compute backend-services update BACKEND_SERVICE \
--cache-key-include-query-string \
--cache-key-query-string-whitelist user
Utilizza questo comando per impostare il parametro della stringa di query user sull'elenco di esclusione di un servizio di backend.
gcloud compute backend-services update BACKEND_SERVICE \
--cache-key-include-query-string \
--cache-key-query-string-blacklist user
Utilizza questo comando per impostare il parametro della stringa di query user sull'elenco di inclusione di un bucket di backend.
gcloud compute backend-buckets update BACKEND_BUCKET \
--cache-key-query-string-whitelist user
API
Per specificare un elenco di inclusione o un elenco di esclusione per un servizio di backend, specifica i parametri della stringa di query nella sezione cacheKeyPolicy di cdnPolicy per la risorsa backendServices.
Per specificare un elenco di inclusione, aggiungi il seguente snippet al corpo della richiesta JSON:
"cdnPolicy": {
"cacheKeyPolicy": [
{
"queryStringWhitelist": [QUERY_STRINGS]
}
]
}
Sostituisci QUERY_STRINGS con un elenco separato da virgole di parametri della stringa di query.
Per specificare un elenco di esclusione, aggiungi il seguente snippet:
"cdnPolicy": {
"cacheKeyPolicy": [
{
"queryStringBlacklist": [QUERY_STRINGS]
}
]
}
Aggiorna le chiavi cache per utilizzare le intestazioni HTTP
Segui queste istruzioni per impostare le chiavi cache di Cloud CDN in modo che utilizzino le intestazioni HTTP, che possono includere variabili personalizzate consentite.
Console
Nella console Google Cloud , vai alla pagina Cloud CDN.
Fai clic sul nome dell'origine da aggiornare.
Fai clic su Modifica.
Se all'origine è collegato più di un bilanciatore del carico, seleziona quello che vuoi aggiornare dal menu Modifica.
Per espandere la sezione Prestazioni della cache, fai clic su Avanti.
In Chiave cache, seleziona Personalizzata.
Nella sezione Componenti chiave di cache, seleziona la casella di controllo Intestazioni HTTP.
Per specificare una o più intestazioni HTTP, fai clic su Aggiungi intestazione HTTP.
Fai clic su Fine.
gcloud
Utilizza il comando gcloud compute backend-services update con l'opzione cache-key-include-http-header.
gcloud compute backend-services update BACKEND_SERVICE \
--cache-key-include-http-header=[HEADER_FIELD_NAMES,...]
Sostituisci HEADER_FIELD_NAMES con un elenco separato da virgole di nomi di intestazioni.
API
Specifica le intestazioni HTTP per le chiavi cache nella sezione cacheKeyPolicy di cdnPolicy per la risorsa backendServices.
Aggiungi il seguente snippet al corpo della richiesta JSON:
"cdnPolicy": {
"cacheKeyPolicy": [
{
"includeHttpHeaders": [HEADER_FIELD_NAMES]
}
]
}
Sostituisci HEADER_FIELD_NAMES con un elenco separato da virgole di nomi di intestazioni.
Se l'intestazione della chiave cache specificata viene specificata anche come intestazione della richiesta personalizzata, non puoi utilizzare l'intera gamma di variabili.
Per saperne di più, consulta Utilizza variabili personalizzate con le intestazioni della richiesta.
Aggiorna le chiavi cache per utilizzare cookie denominati
Segui queste istruzioni per impostare le chiavi cache di Cloud CDN in modo che utilizzino i cookie HTTP.
Console
Nella console Google Cloud , vai alla pagina Cloud CDN.
Fai clic sul nome dell'origine da aggiornare.
Fai clic su Modifica.
Se all'origine è collegato più di un bilanciatore del carico, seleziona quello che vuoi aggiornare dal menu Modifica.
Per espandere la sezione Prestazioni della cache, fai clic su Avanti.
In Chiave cache, seleziona Personalizzata.
Nella sezione Componenti chiave di cache, seleziona la casella di controllo Cookie denominati.
Per specificare uno o più cookie, fai clic su Aggiungi cookie denominato.
Fai clic su Fine.
gcloud
Utilizza il comando gcloud compute backend-services update con l'opzione cache-key-include-named-cookie.
gcloud compute backend-services update BACKEND_SERVICE \
--cache-key-include-named-cookie=[NAMED_COOKIES,...]
Sostituisci NAMED_COOKIES con un elenco separato da virgole di cookie denominati.
API
Per specificare un elenco di inclusione o un elenco di esclusione per un servizio di backend, specifica i parametri della stringa di query nella sezione cacheKeyPolicy di cdnPolicy per la risorsa backendServices.
Per specificare un elenco di inclusione, aggiungi il seguente snippet al corpo della richiesta JSON:
"cdnPolicy": {
"cacheKeyPolicy": [
{
"includeNamedCookies": [NAMED_COOKIES]
}
]
}
Sostituisci NAMED_COOKIES con un elenco separato da virgole di parametri della stringa di query.
Passaggi successivi
- Per verificare se Cloud CDN gestisce le risposte dalla cache, consulta Log e metriche per la memorizzazione nella cache.