Gestire la scadenza di BLOB del servizio di archiviazione di Azure nella rete CDN di Azure

Il servizio BLOB di Archiviazione di Azure è una delle diverse origini basate su Azure integrate nella rete CDN di Azure. Qualsiasi contenuto BLOB accessibile pubblicamente può essere memorizzato nella cache della rete CDN di Azure fino allo scadere della relativa durata (TTL). La durata (TTL) è determinata dall' Cache-Control nella risposta HTTP di Archiviazione di Azure.

Suggerimento

È possibile scegliere di non impostare alcuna durata (TTL) per un BLOB. In tal caso, la rete CDN di Azure applica automaticamente una durata (TTL) predefinita di sette giorni.

Per altre informazioni sull'uso della rete CDN di Azure per velocizzare l'accesso a BLOB e altri file, vedere la panoramica della rete CDN di Azure.

Per informazioni dettagliate sul servizio BLOB del servizio di Archiviazione di Azure, vedere Concetti relativi al servizio BLOB.

Questa esercitazione illustra vari modi in cui è possibile impostare la durata (TTL) per un BLOB in Archiviazione di Azure.

Azure PowerShell

Azure PowerShell è uno dei modi più rapidi ed efficaci per amministrare i servizi di Azure. Usare il cmdlet Get-AzureStorageBlob per ottenere un riferimento al BLOB, quindi impostare la proprietà .ICloudBlob.Properties.CacheControl.

# Create a storage context
$context = New-AzureStorageContext -StorageAccountName "<storage account name>" -StorageAccountKey "<storage account key>"

# Get a reference to the blob
$blob = Get-AzureStorageBlob -Context $context -Container "<container name>" -Blob "<blob name>"

# Set the CacheControl property to expire in 1 hour (3600 seconds)
$blob.ICloudBlob.Properties.CacheControl = "public, max-age=3600"

# Send the update to the cloud
$blob.ICloudBlob.SetProperties()
Suggerimento

È anche possibile usare PowerShell per gestire i profili e gli endpoint della rete CDN.

Libreria client di archiviazione di Azure per .NET

Per impostare la durata (TTL) di un BLOB con .NET, usare la libreria client di archiviazione di Azure per .NET per impostare la proprietà CloudBlob.Properties.CacheControl.

class Program
{
    const string connectionString = "<storage connection string>";
    static void Main()
    {
        // Retrieve storage account information from connection string
        CloudStorageAccount storageAccount = CloudStorageAccount.Parse(connectionString);

        // Create a blob client for interacting with the blob service.
        CloudBlobClient blobClient = storageAccount.CreateCloudBlobClient();

        // Create a reference to the container
        CloudBlobContainer container = blobClient.GetContainerReference("<container name>");

        // Create a reference to the blob
        CloudBlob blob = container.GetBlobReference("<blob name>");

        // Set the CacheControl property to expire in 1 hour (3600 seconds)
        blob.Properties.CacheControl = "public, max-age=3600";

        // Update the blob's properties in the cloud
        blob.SetProperties();
    }
}
Suggerimento

Molti altri esempi di codice .NET sono disponibili in Azure Blob Storage Samples for .NET(Esempi di archivio BLOB di Azure per .NET).

Altri metodi

  • Interfaccia della riga di comando di Azure

    Quando si carica il BLOB, impostare la proprietà cacheControl usando l'opzione -p. Questo esempio imposta la durata (TTL) su un'ora, ovvero 3.600 secondi.

    azure storage blob upload -c <connectionstring> -p cacheControl="public, max-age=3600" .\test.txt myContainer test.txt
    
  • API REST dei servizi di archiviazione di Azure

    Impostare in modo esplicito la proprietà x-ms-blob-cache-control su una richiesta Put Blob, Put Block List o Set Blob Properties.

  • Strumenti di gestione dell'archiviazione di terze parti

    Alcuni strumenti di gestione di Archiviazione di Azure di terze parti consentono di impostare la proprietà CacheControl per i BLOB.

Test dell'intestazione Cache-Control

È possibile verificare facilmente la durata (TTL) dei BLOB. Usare gli strumenti di sviluppodel browser per verificare che il BLOB includa l'intestazione della risposta Cache-Control . È anche possibile usare uno strumento come wget, Postman o Fiddler per esaminare le intestazioni della risposta.

Passaggi successivi