Questa pagina fornisce istruzioni per modificare le modalità cache con Cloud CDN. Le modalità cache consentono di configurare il modo in cui Cloud CDN memorizza i tuoi contenuti nella cache.
Prima di iniziare
Scopri di più sulle modalità di cache e sui contenuti statici.
Assicurati che Cloud CDN sia abilitato. Per istruzioni, consulta Utilizzo di Cloud CDN.
Se necessario, esegui l'aggiornamento all'ultima versione di Google Cloud CLI:
gcloud components update
Impostazione della modalità cache
Per configurare le modalità cache per un backend abilitato per Cloud CDN:
Console
- Nella console Google Cloud , vai alla pagina Bilanciamento del carico.
- Fai clic sul nome del bilanciatore del carico delle applicazioni esterno.
- Fai clic su Modifica .
- In Configurazione backend, seleziona un backend e fai clic su Modifica .
- Assicurati che l'opzione Abilita Cloud CDN sia selezionata.
- In Modalità cache, seleziona una delle seguenti opzioni:
- Memorizza nella cache il contenuto statico (consigliato): per contenuto statico si intendono gli asset web che non cambiano per ogni utente. Il contenuto statico è basato sul
Content-Typenella risposta. Per saperne di più, consulta Contenuto statico. - Usa le impostazioni dell'origine in base alle intestazioni Cache-Control: memorizza nella cache le risposte con direttive di memorizzazione nella cache valide nelle intestazioni delle risposte.
- Forza memorizzazione nella cache di tutto il contenuto: memorizza nella cache tutti i contenuti forniti correttamente dall'origine, ignorando eventuali direttive
privateono-store.
- Memorizza nella cache il contenuto statico (consigliato): per contenuto statico si intendono gli asset web che non cambiano per ogni utente. Il contenuto statico è basato sul
- Fai clic su Salva.
gcloud
Per i servizi di backend, utilizza il comando gcloud compute backend-services
create o gcloud compute backend-services
update con il flag --cache-mode.
Per i bucket di backend, utilizza il comando gcloud compute backend-buckets
create o gcloud compute backend-buckets
update con il flag --cache-mode.
gcloud compute backend-services (create | update) BACKEND_SERVICE_NAME
--cache-mode=CACHE_MODE
gcloud compute backend-buckets (create | update) BACKEND_BUCKET_NAME
--cache-mode=CACHE_MODE
Sostituisci CACHE_MODE con una delle seguenti opzioni:
CACHE_ALL_STATIC(impostazione predefinita): memorizza automaticamente nella cache i contenuti statici. Le risposte contrassegnate come non memorizzabili nella cache (direttiveprivateono-storenelle intestazioni della rispostaCache-Control) non vengono memorizzate nella cache. Per memorizzare nella cache i contenuti dinamici, i contenuti devono avere intestazioni di memorizzazione nella cache valide.USE_ORIGIN_HEADERS: richiede che l'origine imposti intestazioni di memorizzazione nella cache valide per memorizzare i contenuti nella cache. Le risposte senza queste intestazioni non vengono memorizzate nella cache di Google e ogni richiesta deve arrivare fino al server di origine, il che potrebbe influire sulle prestazioni e aumentare il carico sul server.FORCE_CACHE_ALL: memorizza nella cache tutti i contenuti (ovvero le risposte corrette), ignorando le direttiveprivateono-storenelle intestazioni delle risposteCache-Control. Questo potrebbe causare la memorizzazione nella cache di contenuti privati, specifici dell'utente (che consentono l'identificazione dell'utente). Abilita questa funzionalità solo sui backend che non forniscono contenuti privati o dinamici, come i bucket Cloud Storage. Non abilitare questa funzionalità sui backend che forniscono contenuti privati o dinamici.
API
Per i bucket di backend, utilizza la chiamata API Method: backendBuckets.insert o Method: backendBuckets.update.
Per i servizi di backend, utilizza la chiamata API Method: backendServices.insert o Method: backendServices.update.
Utilizza una delle chiamate API seguenti:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendBuckets PUT https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendBuckets/BACKEND_BUCKET POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendServices PUT https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendServices/BACKEND_SERVICE
Aggiungi il seguente snippet al corpo della richiesta JSON:
"cdnPolicy": {
"cacheMode": (CACHE_ALL_STATIC | USE_ORIGIN_HEADERS | FORCE_CACHE_ALL)
Sostituisci CACHE_MODE con una delle seguenti opzioni:
CACHE_ALL_STATIC(valore predefinito): memorizza automaticamente nella cache i contenuti statici se l'origine non imposta intestazioni di memorizzazione nella cache valide. Le risposte contrassegnate come non memorizzabili nella cache (direttiveprivateono-storenelle intestazioni della rispostaCache-Control) non vengono memorizzate nella cache. Per memorizzare nella cache i contenuti dinamici, i contenuti devono avere intestazioni di memorizzazione nella cache valide.USE_ORIGIN_HEADERS: richiede che l'origine imposti intestazioni di memorizzazione nella cache valide per memorizzare i contenuti nella cache. Le risposte senza queste intestazioni non vengono memorizzate nella cache di Google e ogni richiesta deve arrivare fino al server di origine, il che potrebbe influire sulle prestazioni e aumentare il carico sul server.FORCE_CACHE_ALL: memorizza nella cache tutti i contenuti (ovvero le risposte corrette), ignorando le direttiveprivateono-storenelle intestazioni delle risposteCache-Control. Questo potrebbe causare la memorizzazione nella cache di contenuti privati, specifici dell'utente (che consentono l'identificazione dell'utente). Devi abilitare questa funzionalità solo sui backend che non forniscono contenuti privati o dinamici, come i bucket Cloud Storage.