Mengelola kedaluwarsa penyimpanan Azure Blob di Azure Content Delivery Network

Layanan penyimpanan Blob di Azure Storage adalah salah satu dari beberapa asal berbasis Azure yang terintegrasi dengan Azure Content Delivery Network. Setiap konten blob yang dapat diakses publik dapat di-cache di Azure Content Delivery Network hingga waktu hidupnya (TTL) berlalu. TTL ditentukan oleh Cache-Control header dalam respons HTTP dari server asal. Artikel ini menjelaskan beberapa cara Anda dapat mengatur header Cache-Control pada blob di Azure Storage.

Anda juga dapat mengontrol pengaturan cache dari portal Azure dengan mengatur aturan penembolokan jaringan pengiriman konten. Jika Anda membuat aturan caching dan mengatur perilaku penembolokan mereka ke Override atau Bypass cache, pengaturan penembolokan yang disediakan asal dibahas dalam artikel ini diabaikan. Untuk informasi tentang konsep caching umum, lihat Cara kerja penembolokan.

Tip

Anda dapat memilih untuk tidak mengatur TTL pada blob. Dalam hal ini, Azure Content Delivery Network secara otomatis menerapkan TTL default selama tujuh hari, kecuali Anda telah menyiapkan aturan penembolokan di portal Azure. TTL default ini hanya berlaku untuk pengoptimalan pengiriman web umum. Untuk pengoptimalan file besar, TTL default adalah satu hari, dan untuk pengoptimalan streaming media, TTL default adalah satu tahun.

Untuk informasi selengkapnya tentang cara kerja Azure Content Delivery Network untuk mempercepat akses ke blob dan file lainnya, lihat Gambaran Umum Azure Content Delivery Network.

Untuk informasi selengkapnya tentang penyimpanan Azure Blob, lihat Pengenalan penyimpanan Blob.

Mengatur header Cache-Control dengan menggunakan aturan penembolokan jaringan pengiriman konten

Metode yang dipilih untuk mengatur header Cache-Control blob adalah menggunakan aturan penembolokan di portal Azure. Untuk informasi selengkapnya tentang aturan penembolokan jaringan pengiriman konten, lihat Mengontrol perilaku penembolokan Azure Content Delivery Network dengan aturan penembolokan.

Catatan

Aturan penembolokan hanya tersedia untuk Azure CDN Standard dari profil Edgio . Untuk profil Azure CDN Premium dari Edgio , Anda harus menggunakan mesin aturan Azure Content Delivery Network di portal Kelola untuk fungsionalitas serupa.

Untuk menavigasi ke halaman aturan penembolokan CDN:

  1. Di portal Azure, pilih profil jaringan pengiriman konten, lalu pilih titik akhir untuk blob.

  2. Di panel kiri, di bawah Pengaturan, pilih Aturan penembolokan.

    Cuplikan layar tombol aturan penembolokan jaringan pengiriman konten.

    Halaman Aturan penembolokan muncul.

    Cuplikan layar halaman penembolokan jaringan pengiriman konten.

Untuk menyetel header Kontrol Tembolok layanan penyimpanan Blob dengan menggunakan aturan penembolokan global:

  1. Di bawah Aturan penembolokan global, atur Perilaku penembolokan string kueri ke Abaikan string kueri dan atur Perilaku penembolokan ke Ambil alih.

  2. Untuk Durasi kedaluwarsa cache, masukkan 3600 dalam kotak Detik atau 1 dalam kotak Jam.

    Cuplikan layar contoh aturan penembolokan global jaringan pengiriman konten.

    Aturan penembolokan global ini menetapkan durasi cache satu jam dan memengaruhi semua permintaan ke titik akhir. Ini mengambil alih header HTTP atau Expires apa pun Cache-Control yang dikirim oleh server asal yang ditentukan oleh titik akhir.

  3. Pilih Simpan.

Untuk mengatur header Cache-Kontrol file blob dengan menggunakan aturan penembolokan kustom:

  1. Di bawah Aturan penembolokan kustom, buat dua kondisi kecocokan:

    J. Untuk kondisi kecocokan pertama, atur kondisi Cocokkan kondisi ke Jalur dan masukkan /blobcontainer1/* untuk Nilai kecocokan. Atur Perilaku penembolokan ke Ambil alih dan masukkan 4 di kotak Jam.

    B. Untuk kondisi kecocokan kedua, atur kondisi Cocokkan kondisi ke Jalur dan masukkan /blobcontainer1/blob1.txt untuk Nilai kecocokan. Atur Perilaku penembolokan ke Ambil alih dan masukkan 2 di kotak Jam.

    Cuplikan layar contoh aturan penembolokan kustom jaringan pengiriman konten.

    Aturan penembolokan kustom pertama menetapkan durasi cache empat jam untuk file blob apa pun di folder /blobcontainer1 di server asal yang ditentukan oleh titik akhir Anda. Aturan kedua mengambil alih aturan pertama untuk file blob blob1.txt saja dan menetapkan durasi cache dua jam untuknya.

  2. Pilih Simpan.

Mengatur header Kontrol Cache dengan menggunakan Azure PowerShell

Catatan

Sebaiknya Anda menggunakan modul Azure Az PowerShell untuk berinteraksi dengan Azure. Lihat Menginstal Azure PowerShell untuk memulai. Untuk mempelajari cara bermigrasi ke modul Az PowerShell, lihat Memigrasikan Azure PowerShell dari AzureRM ke Az.

Azure PowerShell adalah salah satu cara tercepat dan paling ampuh untuk mengelola layanan Azure Anda. Gunakan cmdlet Get-AzStorageBlob untuk mendapatkan referensi ke blob, lalu setel properti .ICloudBlob.Properties.CacheControl.

Contohnya:

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

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

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

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

Tip

Anda juga dapat menggunakan PowerShell untuk mengelola profil dan titik akhir jaringan pengiriman konten Anda.

Mengatur header Kontrol Cache menggunakan .NET

Untuk menentukan header Cache-Control blob dengan menggunakan kode .NET, gunakan Pustaka Klien Azure Storage untuk .NET guna mengatur properti BlobHttpHeaders.CacheControl.

Contohnya:

    class Program
    {
        const string containerName = "<container name>";
        const string blobName = "<blob name>";
        const string connectionString = "<storage connection string>";
        static void Main()
        {
            // Retrieve storage account information from connection string
            BlobContainerClient container = new BlobContainerClient(connectionString, containerName);

            // Create a blob client for interacting with the blob service.
            BlobClient blob = container.GetBlobClient(blobName);

            // Set the CacheControl property to expire in 1 hour (3600 seconds)
            blob.SetHttpHeaders(new BlobHttpHeaders {CacheControl = "max-age=3600" });
        }
    }

Tip

Ada lebih banyak sampel kode .NET yang tersedia di Contoh Azure Blob Storage untuk .NET.

Mengatur header Kontrol Cache menggunakan metode lain

Azure Storage Explorer

Dengan Azure Storage Explorer, Anda dapat melihat dan mengedit sumber daya penyimpanan blob, termasuk properti seperti properti CacheControl.

Untuk memperbarui properti CacheControl blob dengan Azure Storage Explorer:

  1. Pilih blob, lalu pilih Properti dari menu konteks.
  2. Gulir ke bawah ke properti CacheControl.
  3. Masukkan nilai, lalu pilih Simpan.

Properti Azure Storage Explorer

Azure CLI

Anda dapat mengelola sumber daya blob Azure dari baris perintah melalui Azure CLI. Untuk mengatur header kontrol cache saat Anda mengunggah blob dengan Azure CLI, atur properti cacheControl dengan menggunakan pengalih -p. Contoh berikut menunjukkan cara mengatur TTL menjadi satu jam (3600 detik):

azure storage blob upload -c <connectionstring> -p cacheControl="max-age=3600" .\<blob name> <container name> <blob name>

REST API layanan Azure Storage

Anda dapat menggunakan REST API layanan Azure Storage untuk secara eksplisit mengatur properti x-ms-blob-cache-control dengan menggunakan operasi berikut berdasarkan permintaan:

Menguji header Cache-Kontrol

Anda dapat dengan mudah memverifikasi pengaturan TTL blob Anda. Dengan alat pengembang browser Anda, uji apakah blob Anda menyertakan Cache-Control header respons. Anda juga dapat menggunakan alat seperti Wget, Postman, atau Fiddler untuk memeriksa header respons.

Langkah berikutnya