L'annullamento della convalida della cache, a volte chiamato eliminazione della cache, è il processo di dichiarare che i contenuti memorizzati nella cache non sono validi. Questo fa sì che la voce rimossa dalla cache e ricaricata dal server di origine la volta successiva che i contenuti vengano richiesti.
Media CDN supporta diversi modi per selezionare i contenuti da invalidato, come segue:
- Host e percorso URL
- Prefisso URL (carattere jolly)
- Memorizza nella cache i tag, inclusi i tag integrati per
status
,origin
econtent-type
Puoi combinare questi parametri di invalidazione per scegliere come target specifiche cache e ridurre al minimo il carico dell'origine nel successivo riempimento della cache.
Sintassi di invalidazione supportata
La sintassi di invalidazione supportata è la seguente:
Tipo | Sintassi | Esempio |
---|---|---|
Annullamento convalida host | Disattiva le risposte memorizzate nella cache per l'host specificato. |
gcloud edge-cache services invalidate-cache
SERVICE_NAME \
|
Annullamento convalida percorso | Disattiva le risposte memorizzate nella cache per il percorso o il prefisso del percorso specificato. |
gcloud edge-cache services invalidate-cache
SERVICE_NAME \
gcloud edge-cache services invalidate-cache
SERVICE_NAME \
|
Annullamento convalida tag cache su codice di stato HTTP, nome origine o tipo MIME |
Disattiva le risposte memorizzate nella cache con un tag corrispondente. Vengono utilizzati più tag
trattato come un valore booleano OR .
|
gcloud edge-cache services invalidate-cache
SERVICE_NAME \
gcloud edge-cache services invalidate-cache
SERVICE_NAME \
|
Note:
- È possibile specificare fino a 10 tag della cache in una singola richiesta di invalidazione.
- Puoi combinare
host
,path
etags
in un'unica richiesta di annullamento. Vengono trattati come un valoreAND
booleano. - Quando vengono specificati più tag della cache, questi vengono trattati come un valore
OR
booleano. Per Ad esempio, se specifichi--tags="status=404,origin=staging-origin"
, tutte le risposte con un tag della cache pari astatus=404
vengono invalidate, così come tutte le risposte con un tag cache diorigin=staging-origin
.
Tag della cache
I tag della cache (o chiavi surrogate) consentono di invalidare i contenuti in base a di metadati arbitrari.
Questi tag sono definiti da quanto segue:
- Impostazione dell'intestazione HTTP
Cache-Tag
in una risposta dell'origine, con tag specificato come elenco di valori separati da virgole. - Tag integrati basati sul codice di stato HTTP della risposta, il tipo MIME
dall'intestazione della risposta HTTP
Content-Type
o dal nome dell'origine è stata recuperata la risposta.
Quando in una singola richiesta di annullamento vengono specificati più tag,
trattato come un valore booleano OR
.
Considera il seguente esempio:
Sono presenti i seguenti oggetti memorizzati nella cache:
- Oggetto 1 memorizzato nella cache con tag
status=200
,content-type=video/mp4
- Oggetto 2 memorizzato nella cache con tag
status=404
,content-type=text/plain
- Oggetto 3 memorizzato nella cache con tag
status=200
,content-type=application/x-mpegurl
- Oggetto 1 memorizzato nella cache con tag
Emetti una richiesta per invalidare gli oggetti con
tags="status=200,content-type=text/plain"
Risultato: tutti e tre gli oggetti memorizzati nella cache vengono invalidati contemporaneamente. Si tratta di evitare di specificare tutte le possibili combinazioni di tag, alcune delle quali sconosciuto.
Note:
- I tag della cache predefiniti non vengono inclusi nella risposta visibile al client perché riflettono le intestazioni esistenti (come la riga di stato o Content-Type) o dettagli di configurazione interni.
- I tag della cache inviati dall'origine nell'intestazione della risposta HTTP
Cache-Tag
vengono inviati al client. Se vuoi impedire che vengano inviati al client, usa la funzionalitàresponseHeadersToRemove
su unrouteRule
per rimuovere l'intestazioneCache-Tag
. Per alcuni esempi, consulta intestazioni personalizzate documentazione.
Tag integrati
Alle risposte vengono applicati automaticamente i seguenti tag della cache: invalidare i contenuti in base al codice di stato, al tipo MIME o all'origine da cui sono stati recuperati i contenuti. Non è necessario specificare questi tag nell'origine diverse.
Tag | Dettagli |
---|---|
status=HTTP_STATUS_CODE
|
Il tag della cache Ad esempio, puoi invalidare tutte le risposte HTTP 404 memorizzate nella cache
specificando |
content-type=MIME_TYPE
|
Il tag della cache Ad esempio, il tipo MIME di una playlist HLS è
Ciò ti consente di invalidare tipi specifici di contenuti. |
origin=ORIGIN_NAME
|
Il tag della cache Il valore |
Limitazioni dei tag della cache
I tag della cache presentano le seguenti restrizioni:
- Non deve superare i 120 byte per tag
- Non deve superare 1 KiB (1024 byte) dei nomi totali dei tag per oggetto memorizzato nella cache
- Non deve superare i 10 tag per oggetto, esclusi i tag predefiniti aggiunti da CDN multimediale
- Deve essere un nome di token HTTP valido, come definito nella Sezione 3.2.6 di HTTP RFC 7230
- Non deve includere gli elementi
status=
,origin=
o integrati Prefissicontent-type=
(che vengono ignorati).
I tag che non rientrano in questi limiti o li soddisfano: ignorato. In alcuni casi (ad esempio quando le intestazioni delle risposte sono troppo grandi), la risposta non va a buon fine e non viene memorizzata nella cache.
Autorizzazioni
networkservices.EdgeCacheServices.invalidateCache
controlla l'accesso all'API invalidateCache
.
Questa autorizzazione è inclusa in networkservices.edgeCacheAdmin
e
networkservices.edgeCacheUser
Ruoli di Identity and Access Management.
Esempi
I seguenti esempi mostrano come invalidare le risposte memorizzate nella cache per un Servizio Media CDN.
Puoi combinare host
, path
e tags
in una singola richiesta di annullamento della convalida per invalidare un insieme specifico di contenuti.
Annullata dall'host
Console
- Vai alla pagina Media CDN nella console Google Cloud.
Vai a Media CDN - Fai clic sulla scheda Services (Servizi).
- Fai clic sul servizio.
- Fai clic sulla scheda Annullamento convalida cache.
- Per invalidare il pattern del percorso, inserisci un nome host seguito da un percorso.
Ad esempio:
media.example.com/cats
omedia.example.com/cat*
. Il nome host non può includere*
.
gcloud
gcloud edge-cache services invalidate-cache SERVICE_NAME \ --host=HOST
Sostituisci quanto segue:
SERVICE_NAME
con il nome del Servizio cache perimetrale.HOST
con il nome host completo del voce della cache da invalidare.
Ad esempio:
gcloud edge-cache services invalidate-cache SERVICE_NAME \ --host="media.example.com"
Annulla convalida in base al percorso
Console
- Vai alla pagina Media CDN nella console Google Cloud.
Vai a Media CDN - Fai clic sulla scheda Services (Servizi).
- Fai clic sul servizio.
- Fai clic sulla scheda Annullamento convalida cache.
- Per invalidare il pattern del percorso, inserisci un percorso.
Ad esempio:
/videos/funny.mp4
o/segments/e94a6b1f731/*
.
gcloud
gcloud edge-cache services invalidate-cache SERVICE_NAME \ --path=PREFIX
Sostituisci quanto segue:
SERVICE_NAME
con il nome del Servizio cache perimetrale.HOST
con il nome host del le voci della cache da invalidare. Per trovare corrispondenze con qualsiasi nome host, ometti l'host flag.PREFIX
con un prefisso di percorso che termina con "*" che corrisponde alle voci della cache da invalidare.
Ad esempio:
gcloud edge-cache services invalidate-cache SERVICE_NAME \ --path="/segments/e94a6b1f731/*"
Puoi anche invalidare un percorso esatto omettendo il valore *
finale
. Il superamento di --path="/videos/funny.mp4"
rende il
risposta memorizzata nella cache (se presente) corrispondente a quel percorso.
Disabilitato da un tag della cache
Console
L'annullamento della convalida tramite tag della cache non è supportato nella console Google Cloud.
gcloud
gcloud edge-cache services invalidate-cache SERVICE_NAME \ --tags=TAGS
Sostituisci quanto segue:
SERVICE_NAME
con il nome del Servizio cache perimetrale.TAGS
con un elenco di tag separati da virgole.
Ad esempio:
gcloud edge-cache services invalidate-cache SERVICE_NAME \ --tags="status=404,content-type=text/plain"
Latenza di invalidazione
Annullamento convalida della cache nelle migliaia di località di Media CDN di solito viene completata entro un minuto a livello globale.
In alcuni casi, l'annullamento della convalida può richiedere più tempo, a seconda del carico del sistema, la connettività e il volume di contenuti invalidati.
Logging
Se gli audit log sono abilitati, le chiamate di invalidazione vengono registrate in Cloud Logging.
Limitazioni
Le invalidazioni sono a frequenza limitata. Se superi il limite di percentuale di invalidazioni,
ricevi un messaggio di errore HTTP 429
con lo stato RESOURCE_EXHAUSTED
.
Un'annullamento convalida può essere di qualsiasi dimensione. Ad esempio, invalidazione
/images/my-image.png
viene conteggiato come un'annullamento convalida. Annullamento convalida anche di /images/*
viene conteggiato come un'azione di invalidazione.
Questo comportamento è diverso dal comportamento di con Cloud CDN. Cloud CDN supporta un'annullamento di convalida al minuto.