IBM Cloud Docs
Cache

Cache

La cache è il processo di memorizzazione dei file sui server periferici per migliorare i tempi di risposta quando vengono serviti ai clienti. Memorizzando i file più vicini agli utenti, la cache riduce il tempo necessario ai dati per viaggiare attraverso la rete, comunemente noto come latenza.

Per impostazione predefinita, CIS memorizza nella cache i file statici, che comprendono molti tipi di immagini e file di testo (non HTML). La cache include solo i file dei vostri siti web e non comprende le risorse di terzi, come quelle dei siti di social network. Attualmente, CIS non esegue la cache in base al tipo di MIME.

CIS non memorizza nella cache i file HTML per impostazione predefinita, perché sono generalmente considerati dinamici. Tuttavia, se l'HTML statico può essere chiaramente distinto dall'HTML dinamico, è possibile memorizzare nella cache i file HTML utilizzando le regole di pagina.

I file nella cache hanno un tempo di scadenza specificato, chiamato Time-to-Live (TTL), dopo il quale vengono eliminati dalla cache. È inoltre possibile eliminare manualmente i file dalla cache in qualsiasi momento. Dopo che i file sono stati eliminati, CIS torna al server di origine per ricaricare i file e aggiornare la cache con le versioni più recenti.

Per informazioni dettagliate sulle impostazioni e le opzioni della cache, vedere Uso delle regole di pagina con la cache.

Comportamento di caching predefinito

CIS memorizza nella cache i contenuti statici in base alla posizione dei visitatori, al data center CIS a cui si collegano e alla frequenza con cui la risorsa viene richiesta da quel data center.

La cache avviene solo all'interno del centro dati CIS che serve la richiesta. Le seguenti risorse non vengono memorizzate nella cache da CIS:

  • Risorse esterne o di terzi
  • Contenuti ospitati su record DNS non proxy

Per impostazione predefinita, CIS rispetta le intestazioni della cache del server web di origine, a meno che una regola di pagina edge cache TTL non le sovrascriva:

  • CIS non mette in cache le risorse se l'intestazione cache-control è impostata su private, no-store, no-cache, o max-age=0, o se nella risposta è presente un cookie.
  • CIS mette in cache le risorse se cache-control è public con un max-age maggiore di 0 o se l'intestazione expires specifica una data futura.
  • Quando sono impostate entrambe le intestazioni max-age e expires, max-age ha la precedenza.

Quando non sono presenti né una direttiva cache-control né un'intestazione expires, CIS memorizza nella cache alcuni codici di risposta HTTP con il seguente TTL predefinito:

Codici di risposta della cache predefiniti
Codice di risposta TTL
200, 206, 301 120 m
302, 303 20 m
404, 410 3 m
403 1 m

CIS fornisce diverse opzioni per personalizzare la cache:

  • Impostare il comportamento della cache per i singoli URL utilizzando le regole di pagina di CIS.
  • Utilizzare le funzioni edge di CIS o l'API per personalizzare la cache.
  • Regola i livelli di memorizzazione nella cache, TTL e altro tramite la CLI CIS.

La dimensione massima dei file che CIS memorizza nella cache è di 512 MB per i clienti Trial e Standard Next e di 5 GB per i clienti Enterprise. I clienti Enterprise possono richiedere la memorizzazione nella cache di file più grandi aprendo un caso di assistenza.

Estensioni file memorizzate per impostazione predefinita

CIS utilizza le estensioni dei file per memorizzare nella cache i contenuti. Le seguenti estensioni file vengono memorizzate automaticamente:

Estensioni dei file memorizzate nella cache per impostazione predefinita
Estensioni file
bmp
class
css
csv
doc
docx
ejs
eot
eps
gif
ico
jar
jpg
js
mid
midi
otf
pdf
pict
pls
png
ppt
pptx
ps
svg
svgz
swf
tif
tiff
ttf
webp
woff
woff2
xls
xlsx

CIS non memorizza nella cache i contenuti in base al tipo MIME e, per impostazione predefinita, non memorizza le pagine HTML. Tuttavia, il file robots.txt del sito web viene memorizzato automaticamente nella cache. Per memorizzare nella cache contenuti aggiuntivi, come le pagine HTML, è possibile impostare regole di pagina personalizzate per controllare ciò che viene memorizzato nella cache.

Servire il contenuto sterrato

La funzione di servire i contenuti obsoleti consente di mantenere online una versione limitata del sito in caso di guasto del server. Anche se il contenuto scade, CIS continua a servire il contenuto in cache agli utenti quando i server di origine sono offline.

Capire le risposte della cache di CIS

L'output dell'intestazione CF-Cache-Status mostra se una risorsa è memorizzata nella cache.

Codici di risposta della cache e definizioni
Codice di risposta Definizione
HIT La risorsa è stata trovata nella cache di CIS.
MISS La risorsa non è stata trovata nella cache di CIS ed è stata servita dal server web di origine.
EXPIRED La risorsa è stata trovata nella cache ma è scaduta ed è stata fornita dal server Web di origine.
STALE La risorsa è stata servita dalla cache, ma è scaduta. CIS non è riuscito a contattare l'origine per recuperare la risorsa aggiornata.
BYPASS Il server di origine ha istruito CIS a bypassare la cache utilizzando un'intestazione cache-control impostata su no-cache, private, o max-age=0. BYPASS viene restituito quando si abilita l'origine cache-control. CIS imposta anche BYPASS quando il server web di origine invia i cookie nell'intestazione della risposta.
REVALIDATED La risorsa viene servita dalla cache, ma è stantia. La risorsa è stata riconvalidata da un'intestazione If-Modified-Since o da un'intestazione If-None-Match.
UPDATING La risorsa è stata servita dalla cache, ma è scaduta. La risorsa è in fase di aggiornamento da parte del server web di origine. UPDATING è tipicamente visto solo per le risorse in cache più popolari.
DYNAMIC La risorsa non è stata memorizzata nella cache per impostazione predefinita e la configurazione attuale della cache di CIS non indica a CIS di memorizzare la risorsa nella cache. La risorsa è stata invece richiesta dal server web di origine. Utilizzare le regole della pagina per implementare opzioni di caching personalizzate.

Utilizzo dell'ordinamento delle stringhe di

Solo Enterprise: CIS tratta gli URL con stringhe di query in ordini diversi come file separati nella cache. Ad esempio, se un utente richiede:

/video/123456?title=0&byline=0&portrait=0&color=987654

e un'altra richiesta:

/video/123456?byline=0&color=987654&portrait=0&title=0

CIS recupera nuovamente il file dall'origine, anche se è già nella cache.

La funzione di ordinamento delle stringhe di query ordina le stringhe di query "prima" della cache, aumentando i tassi di risposta della cache. È possibile attivare l'ordinamento delle stringhe di query utilizzando la levetta nella pagina Caching.