Le Content Delivery Network (CDN) costituiscono un ottimo sistema per poter rendere più veloce possibile la restituzione di contenuti statici. Con Microsoft Azure, per esempio, possono essere abbinate ad uno storage e in autonomia servire le richieste degli utenti con più punti geolocalizzati per tutto il mondo.
Per ottenere queste prestazioni, la CDN di Azure effettua una copia in locale che aggiorna ad intervalli regolari. Questo significa, però, che se modifichiamo un file statico, questo non è immediatamente visibile dall'endpoint pubblico della CDN.
Per ovviare a questo problema, possiamo forzare il motore affinché invalidi la cache, ottenendo a nostra discrezione una nuova copia delle informazioni. Possiamo fare questa operazione direttamente dal portale, nell'overview dell'enpoint, premendo su Purge.

Possiamo scegliere di invalidare tutto, oppure essere più precisi e indicare percorsi specifici, eventualmente con l'ausilio dell'asterisco. L'operazione non è immediata e può richiedere parecchi minuti, perciò consigliamo di essere precisi.
Se stiamo usando una pipeline di continuos delivery, possiamo inoltre usare Azure CLI in modo da automatizzare il processo una volta caricati i file sullo storage, come mostrato nell'esempio.
az cdn endpoint purge -g myResourceGroup -n myEndpoint --profile-name myProfile --content-paths '/*' --no-wait
L'uso dell'opzione --no-wait è consigliata per non mantenere appeso il processo di rilascio inutilmente.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
.NET Conference Italia 2024
Estrarre dati randomici da una lista di oggetti in C#
Bloccare l'esecuzione di un pod in mancanza di un'artifact attestation di GitHub
Effettuare il log delle chiamate a function di GPT in ASP.NET Web API
Generare HTML a runtime a partire da un componente Razor in ASP.NET Core
Utilizzare Azure AI Studio per testare i modelli AI
Ottimizzare le performance delle collection con le classi FrozenSet e FrozenDictionary
Garantire la provenienza e l'integrità degli artefatti prodotti su GitHub
Gestione degli eventi nei Web component HTML
Definire stili a livello di libreria in Angular
Cambiare la chiave di partizionamento di Azure Cosmos DB
Configurare lo startup di applicazioni server e client con .NET Aspire