Questa pagina fornisce istruzioni per modificare le modalità cache con Cloud CDN. Le modalità cache ti consentono di configurare il modo in cui Cloud CDN memorizza i tuoi contenuti nella cache.
Prima di iniziare
Scopri di più sulle modalità della cache e sui contenuti statici.
Assicurati che Cloud CDN sia abilitato. Per istruzioni, consulta Utilizzo di Cloud CDN.
Se necessario, esegui l'aggiornamento alla versione più recente di Google Cloud CLI:
gcloud components update
Impostazione della modalità cache
Per configurare le modalità cache per un backend abilitato per Cloud CDN, svolgi i seguenti passaggi:
Console
- Nella console Google Cloud, vai alla pagina Bilanciamento del carico.
- Fai clic sul nome dell'Application Load Balancer esterno.
- Fai clic su Modifica .
- In Configurazione backend, seleziona un backend e fai clic su Modifica .
- Assicurati che l'opzione Attiva Cloud CDN sia selezionata.
- In Modalità cache, seleziona una delle seguenti opzioni:
- Memorizza nella cache i contenuti statici (consigliato): i contenuti statici sono asset web che non cambiano per ogni utente. Il contenuto statico si basa su
Content-Type
nella risposta. Per ulteriori informazioni, consulta contenuti statici. - Utilizza le impostazioni dell'origine in base alle intestazioni Cache-Control: memorizza nella cache le risposte con direttive di memorizzazione nella cache valide nelle intestazioni di risposta.
- Forza memorizzazione nella cache di tutto il contenuto: memorizza nella cache tutti i contenuti pubblicati correttamente dall'origine, ignorando eventuali direttive
private
ono-store
.
- Memorizza nella cache i contenuti statici (consigliato): i contenuti statici sono asset web che non cambiano per ogni utente. Il contenuto statico si basa su
- 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 (istruzioniprivate
ono-store
nelle intestazioni di rispostaCache-Control
) non vengono memorizzate nella cache. Per memorizzare nella cache i contenuti dinamici, questi devono avere intestazioni di memorizzazione nella cache valide.USE_ORIGIN_HEADERS
: richiede all'origine di impostare intestazioni di memorizzazione nella cache valide per memorizzare nella cache i contenuti. Le risposte senza queste intestazioni non vengono memorizzate nella cache sull'edge di Google e richiedono un viaggio completo all'origine per ogni richiesta, con potenziali ripercussioni sulle prestazioni e un aumento del carico sul server di origine.FORCE_CACHE_ALL
: memorizza nella cache tutti i contenuti (ovvero le risposte corrette), ignorando eventuali istruzioniprivate
ono-store
nelle intestazioni di rispostaCache-Control
. Ciò potrebbe comportare la memorizzazione nella cache di contenuti privati per ciascun utente (utente identificabile). Attiva questa opzione solo sui backend che non pubblicano contenuti privati o dinamici, come i bucket Cloud Storage. Non attivare questa funzionalità sui backend che pubblicano 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 seguenti chiamate API:
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 (istruzioniprivate
ono-store
nelle intestazioni di rispostaCache-Control
) non vengono memorizzate nella cache. Per memorizzare nella cache i contenuti dinamici, questi devono avere intestazioni di memorizzazione nella cache valide.USE_ORIGIN_HEADERS
: richiede all'origine di impostare intestazioni di memorizzazione nella cache valide per memorizzare nella cache i contenuti. Le risposte senza queste intestazioni non vengono memorizzate nella cache sull'edge di Google e richiedono un viaggio completo all'origine per ogni richiesta, con potenziali ripercussioni sulle prestazioni e un aumento del carico sul server di origine.FORCE_CACHE_ALL
: memorizza nella cache tutti i contenuti (ovvero le risposte corrette), ignorando eventuali istruzioniprivate
ono-store
nelle intestazioni di rispostaCache-Control
. Ciò potrebbe comportare la memorizzazione nella cache di contenuti privati per ciascun utente (utente identificabile). Devi abilitare questa funzionalità solo sui backend che non forniscono contenuti privati o dinamici, come i bucket Cloud Storage.