Questa pagina descrive la cache integrata di Cloud Storage. Cloud Storage è compatibile anche con le CDN di terze parti.
Panoramica
Quando un oggetto Cloud Storage viene memorizzato nella cache, le copie dei dati dell'oggetto vengono memorizzate in una cache di Google o di internet in modo che l'oggetto possa essere servito più rapidamente nelle richieste future. Sebbene la memorizzazione nella cache possa migliorare le prestazioni, rischi anche di pubblicare contenuti obsoleti se aggiorni l'oggetto, ma una cache continua a pubblicare la versione precedente dell'oggetto.
Memorizzazione nella cache integrata per Cloud Storage
Cloud Storage può comportarsi come una rete di distribuzione dei contenuti (CDN) senza
alcun intervento da parte tua, perché i dati di un oggetto vengono memorizzati nella cache della
rete Cloud Storage se i relativi metadati Cache-Control
sono impostati in modo da
consentire la memorizzazione nella cache e se vengono soddisfatti i seguenti criteri:
- L'oggetto è accessibile pubblicamente.
- L'oggetto non è archiviato in un bucket con l'opzione Richiedente paga abilitata e non si trova all'interno di un perimetro di servizio Virtual Private Cloud.
- L'oggetto non è criptato utilizzando chiavi di crittografia gestite dal cliente o chiavi di crittografia fornite dal cliente.
Cloud Storage rispetta i valori standard per
Cache-Control
, ad esempio:
public
: l'oggetto può essere memorizzato nella cache.private
: l'oggetto non verrà memorizzato nella cache da Cloud Storage, ma può essere memorizzato nella cache locale di un richiedente.no-cache
: l'oggetto può essere memorizzato nella cache, ma non può essere utilizzato per soddisfare richieste future a meno che non venga prima convalidato da Cloud Storage.no-store
: l'oggetto non può essere memorizzato nella cache.max-age=TIME_IN_SECONDS
: il periodo di tempo durante il quale un oggetto può essere memorizzato nella cache prima di essere considerato obsoleto. Puoi impostaremax-age
su qualsiasi durata. Gli oggetti obsoleti non vengono pubblicati dalle cache, tranne in circostanze speciali.
Per impostare i metadati Cache-Control
per un oggetto, consulta
Modifica dei metadati degli oggetti.
Comportamento di memorizzazione nella cache integrato con i criteri di negazione IAM
Quando esiste un criterio IAM Deny a livello di organizzazione che
limita l'accesso in lettura per un oggetto dall'identificatore dell'entità allUsers
,
la memorizzazione nella cache integrata è disattivata per l'oggetto, anche se esiste un criterio IAM a livello di bucket
che concede l'accesso in lettura per l'oggetto a allUsers
.
Tuttavia, se il criterio di negazione IAM limita solo i singoli utenti,
la memorizzazione nella cache integrata rimane attiva per l'oggetto.
Considerazioni sulle prestazioni
Le prestazioni possono essere molto migliori per gli oggetti memorizzabili pubblicamente nella cache. Se utilizzi un oggetto per controllare molti client e vuoi disattivare la memorizzazione nella cache per fornire i dati più recenti:
Prova invece a impostare i metadati
Cache-Control
dell'oggetto supublic
conmax-age
di 15-60 secondi. La maggior parte delle applicazioni può tollerare che un oggetto non sia aggiornato per alcuni secondi, in cambio di miglioramenti delle prestazioni.Utilizza
Cache-Control: no-store
per un oggetto per indicare che quell'oggetto non deve essere memorizzato nella cache per le successive richieste in qualsiasi cache.
Passaggi successivi
- Scopri di più sui metadati
Cache-Control
. - Scopri di più sulle direttive RFC
Cache-Control
.