Questa pagina descrive come invalidare i contenuti memorizzati nella cache di Cloud CDN.
Ad esempio, se un file situato in /images/file.jpg
è stato memorizzato nella cache e deve essere invalidato, puoi utilizzare diversi metodi per farlo, a seconda che tu voglia influire solo su quel file o su un ambito più ampio. In ogni caso, puoi annullare la convalida per tutti i nomi host o per un solo nome host.
Per scoprire di più sull'invalidazione della cache, consulta la Panoramica dell'invalidazione della cache.
Prima di iniziare
Puoi utilizzare Google Cloud CLI o la console Google Cloud per eseguire le invalidazioni.
Puoi accedere a Google Cloud CLI in due modi:
Installa Google Cloud CLI seguendo le istruzioni riportate in Installazione con
apt-get
. Se non hai mai utilizzato Google Cloud CLI, esegui primagcloud init
per autenticarti.Utilizza Cloud Shell, che include
gcloud
già installato.
Per creare un ruolo personalizzato con le autorizzazioni richieste, consulta Creare e gestire i ruoli personalizzati.
Per aggiungere un ruolo predefinito, utilizza la guida introduttiva IAM.
Annullare la validità di un solo file
Console
- Nella console Google Cloud, vai alla pagina Cloud CDN.
- In Bilanciatori del carico associati, fai clic sul nome del bilanciatore del carico.
- Fai clic sulla scheda Invalidazione della cache.
- Inserisci il percorso del file.
- Se vuoi invalidare un percorso per tutti i nomi host, inserisci solo il percorso (ad esempio:
/images/file.jpg
). - Se vuoi invalidare un percorso per un solo nome host, specifica il nome host come parte del percorso (ad esempio
host1.com/images/file.jpg
).
- Se vuoi invalidare un percorso per tutti i nomi host, inserisci solo il percorso (ad esempio:
- Fai clic su Invalida.
gcloud
Utilizza il
comando gcloud compute url-maps invalidate-cdn-cache
.
Per specificare un solo file da invalidare, utilizza il flag --path
con il nome del file.
gcloud compute url-maps invalidate-cdn-cache URL_MAP_NAME \ --path "/images/file.jpg"
Sostituisci URL_MAP_NAME
con il nome della mappa di URL. Per elencare le mappe URL, utilizza il comando gcloud compute url-maps list
.
Per annullare l'autenticazione per un solo host, aggiungi il flag --host
, ad esempio --host host1.com
.
gcloud compute url-maps invalidate-cdn-cache URL_MAP_NAME \ --host host1.com \ --path "/images/file.jpg"
Per impostazione predefinita, Google Cloud CLI attende il completamento dell'invalidazione. Per eseguire l'invalidazione in background, aggiungi --async
alla riga di comando.
API
Utilizza la chiamata API del
metodo urlMaps.invalidateCache
.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/urlMaps/URL_MAP_NAME/invalidateCache
Sostituisci quanto segue:
PROJECT_ID
: il tuoID progetto della console Google CloudURL_MAP_NAME
: il nome della mappa URL
Per specificare un file da invalidare, utilizza il seguente corpo della richiesta JSON di esempio:
{ "path": "/images/file.jpg" }
Per invalidare il file per un solo host, utilizza il seguente corpo della richiesta JSON di esempio:
{ "host": "host1.com", "path": "/images/file.jpg" }
Annullare l'intera directory
Console
- Nella console Google Cloud, vai alla pagina Cloud CDN.
- In Bilanciatori del carico associati, fai clic sul nome del bilanciatore del carico.
- Fai clic sulla scheda Invalidazione della cache.
- Inserisci il percorso della directory e il carattere jolly (
/path/to/file/*
).- Se vuoi invalidare l'intera directory per tutti i nomi host, inserisci solo il percorso e il carattere jolly (ad esempio:
/images/*
). - Se vuoi invalidare l'intera directory per un solo nome host,
specifica il nome host come parte del percorso
(ad esempio:
host1.com/images/*
).
- Se vuoi invalidare l'intera directory per tutti i nomi host, inserisci solo il percorso e il carattere jolly (ad esempio:
- Fai clic su Invalida.
gcloud
Utilizza il
comando gcloud compute url-maps invalidate-cdn-cache
.
gcloud compute url-maps invalidate-cdn-cache URL_MAP_NAME \ --path "/images/*"
Sostituisci URL_MAP_NAME
con il nome della mappa di URL.
Per annullare l'autenticazione per un solo host, aggiungi il flag --host
, ad esempio --host host1.com
.
gcloud compute url-maps invalidate-cdn-cache URL_MAP_NAME \ --host host1.com \ --path "/images/*"
API
Utilizza la chiamata API del
metodo urlMaps.invalidateCache
.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/urlMaps/URL_MAP_NAME/invalidateCache
Sostituisci quanto segue:
PROJECT_ID
: il tuoID progetto della console Google CloudURL_MAP_NAME
: il nome della mappa URL
Per specificare una directory da invalidare, utilizza il seguente corpo della richiesta JSON di esempio:
{ "path": "/images/*" }
Per invalidare una directory solo per un host, utilizza il seguente corpo della richiesta JSON di esempio:
{ "host": "host1.com", "path": "/images/*" }
Annullamento della convalida per tag della cache
Console
L'utilizzo dei tag cache per l'invalidazione non è supportato nella console Google Cloud.
gcloud
Utilizza il
comando gcloud beta compute url-maps invalidate-cdn-cache
.
gcloud beta compute url-maps invalidate-cdn-cache URL_MAP_NAME \ --tags=TAGS
Sostituisci quanto segue:
URL_MAP_NAME
: il nome della mappa URLTAGS
: un tag o un elenco di tag separati da virgole. In alternativa, puoi specificare questo flag fino a 10 volte
Ad esempio, se la risposta del backend include un'intestazione Cache-Tag
con un ID utente opaco, ad esempio un UUID4 o un'altra forma di GUID, puoi invalidare tutti i contenuti per un utente specifico utilizzando il flag tag
.
Inoltre, per invalidare i contenuti per un solo host, ad esempio per il tuo ambiente di staging, aggiungi il flag --host
.
gcloud beta compute url-maps invalidate-cdn-cache url_map_1 \ --tags="1115b8f4-f804-4861-9629-8cb9aecdeeb3" \ --host="host1.com"
API
Utilizza la chiamata API del
metodo urlMaps.invalidateCache
.
POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/global/urlMaps/URL_MAP_NAME/invalidateCache
Sostituisci quanto segue:
PROJECT_ID
: il tuoID progetto della console Google CloudURL_MAP_NAME
: il nome della mappa URL
Per specificare i tag cache per l'invalidazione, utilizza il seguente corpo della richiesta JSON di esempio:
{ "tags": "tag1,tag2" }
Puoi specificare un singolo tag o un elenco di tag separati da virgole.
Per annullare l'aggiornamento in base ai tag cache per un solo host, utilizza il seguente corpo della richiesta JSON di esempio:
{ "host": "host1.com", "path": "tag1,tag2" }
Invalida tutto
Console
- Nella console Google Cloud, vai alla pagina Cloud CDN.
- In Bilanciatori del carico associati, fai clic sul nome del bilanciatore del carico.
- Fai clic sulla scheda Invalidazione della cache.
- Inserisci solo la radice e il carattere jolly (
/*
).- Se vuoi invalidare tutto per tutti i nomi host, inserisci solo
/*
nel campo. - Se vuoi invalidare tutto per un solo nome host,
specifica il nome host come parte del percorso (ad esempio:
host1.com/*
).
- Se vuoi invalidare tutto per tutti i nomi host, inserisci solo
- Fai clic su Invalida.
gcloud
Utilizza il
comando gcloud compute url-maps invalidate-cdn-cache
.
gcloud compute url-maps invalidate-cdn-cache URL_MAP_NAME \ --path "/*"
Sostituisci quanto segue:
URL_MAP_NAME
: il nome della mappa URL/*
: il percorso dell'URL che vuoi invalidare; non include il nome host; il percorso può utilizzare un nome file esplicito o un carattere jolly
Per annullare l'autenticazione per un solo host, aggiungi il flag --host
, ad esempio --host host1.com
.
gcloud compute url-maps invalidate-cdn-cache URL_MAP_NAME \ --host host1.com \ --path "/*"
API
Utilizza la chiamata API del
metodo urlMaps.invalidateCache
.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/urlMaps/URL_MAP_NAME/invalidateCache
Sostituisci quanto segue:
PROJECT_ID
: il tuoID progetto della console Google CloudURL_MAP_NAME
: il nome della mappa URL
Per specificare un percorso dell'URL per l'invalidazione, utilizza il seguente corpo della richiesta JSON di esempio:
{ "path": "/*" }
Per invalidare il percorso dell'URL per un solo host, utilizza il seguente corpo della richiesta JSON di esempio:
{ "host": "host1.com", "path": "/*" }
Visualizzare lo stato della richiesta di annullamento
Cloud CDN emette due righe di log per annullamento, una quando l'annullamento viene accettato e l'altra quando è completato. Il primo contiene le informazioni sull'host e sul percorso.
Per visualizzare lo stato della richiesta di invalidazione o trovare un elenco definitivo delle richieste inviate di recente, puoi utilizzare Cloud Logging o Cloud Monitoring.
Di seguito è riportato un comando di esempio che utilizza il logging:
gcloud logging read 'protoPayload.methodName="v1.compute.urlMaps.invalidateCache"' \ --limit=10
Di seguito è riportata una query di esempio che utilizza il monitoraggio:
protoPayload.serviceName="compute.googleapis.com" protoPayload.methodName="v1.compute.urlMaps.invalidateCache"
Passaggi successivi
- Per verificare se Cloud CDN sta pubblicando risposte dalla cache, consulta Visualizzazione dei log.
- Per scoprire quali contenuti sono memorizzabili nella cache o meno, consulta la Panoramica della memorizzazione nella cache.