Simpan ke cache
BERLAKU UNTUK: Semua tingkatAN API Management
Kebijakan cache respons cache-store
sesuai dengan pengaturan cache yang ditentukan. Kebijakan ini dapat diterapkan dalam kasus di mana konten respons tetap statis selama periode waktu tertentu. Pembuatan cache respons mengurangi bandwidth dan persyaratan pemrosesan yang diberlakukan pada server web backend dan menurunkan latensi yang diketahui konsumen API.
Catatan
Kebijakan ini harus memiliki kebijakan Dapatkan ke cache yang sesuai.
Penting
Cache bawaan mudah menguap dan dibagikan oleh semua unit di wilayah yang sama dalam layanan API Management yang sama.
Catatan
Tetapkan elemen kebijakan dan elemen turunan dalam urutan yang disediakan dalam pernyataan kebijakan. Untuk membantu Anda mengonfigurasi kebijakan ini, portal menyediakan editor berbasis formulir berikut panduannya. Pelajari lebih lanjut cara mengatur atau mengedit kebijakan API Management.
Pernyataan kebijakan
<cache-store duration="seconds" cache-response="true | false" />
Atribut
Atribut | Deskripsi | Wajib diisi | Default |
---|---|---|---|
durasi | Waktu nyala dari entri cache, dinyatakan dalam detik. Ekspresi kebijakan diizinkan. | Ya | T/A |
cache-response | Atur ke true ke cache respons HTTP saat ini. Jika atribut dihilangkan, hanya respons HTTP dengan kode 200 OK status yang di-cache. Ekspresi kebijakan diizinkan. |
No | false |
Penggunaan
- Bagian kebijakan: keluar
- Cakupan kebijakan: global, ruang kerja, produk, API, operasi
- Gateway: klasik, v2, konsumsi, dihost sendiri, ruang kerja
Catatan penggunaan
- API Management hanya menyimpan respons terhadap permintaan HTTP GET.
- Kebijakan ini hanya dapat digunakan sekali di bagian kebijakan.
Contoh
Contoh dengan kebijakan pencarian cache yang sesuai
<policies>
<inbound>
<base />
<cache-lookup vary-by-developer="false" vary-by-developer-groups="false" downstream-caching-type="none" must-revalidate="true" caching-type="internal" >
<vary-by-query-parameter>version</vary-by-query-parameter>
</cache-lookup>
</inbound>
<outbound>
<cache-store duration="seconds" />
<base />
</outbound>
</policies>
Contoh menggunakan ekspresi kebijakan
Contoh ini menunjukkan cara mengonfigurasi durasi penembolokan respons API Management yang cocok dengan penembolokan respons layanan backend sebagaimana ditentukan oleh arahan Cache-Control
layanan backend.
<!-- The following cache policy snippets demonstrate how to control API Management response cache duration with Cache-Control headers sent by the backend service. -->
<!-- Copy this snippet into the inbound section -->
<cache-lookup vary-by-developer="false" vary-by-developer-groups="false" downstream-caching-type="public" must-revalidate="true" >
<vary-by-header>Accept</vary-by-header>
<vary-by-header>Accept-Charset</vary-by-header>
</cache-lookup>
<!-- Copy this snippet into the outbound section. Note that cache duration is set to the max-age value provided in the Cache-Control header received from the backend service or to the default value of 5 min if none is found -->
<cache-store duration="@{
var header = context.Response.Headers.GetValueOrDefault("Cache-Control","");
var maxAge = Regex.Match(header, @"max-age=(?<maxAge>\d+)").Groups["maxAge"]?.Value;
return (!string.IsNullOrEmpty(maxAge))?int.Parse(maxAge):300;
}"
/>
Untuk informasi selengkapnya, lihat Ekspresi kebijakan dan Variabel konteks.
Kebijakan terkait
Konten terkait
Untuk informasi selengkapnya tentang bekerja dengan kebijakan, lihat:
- Tutorial: Mengubah dan melindungi API Anda
- Referensi Kebijakan untuk daftar lengkap pernyataan kebijakan dan pengaturannya
- Ekspresi kebijakan
- Mengatur atau mengedit kebijakan
- Menggunakan kembali konfigurasi kebijakan
- Repositori cuplikan kebijakan
- Kebijakan penulis menggunakan Microsoft Copilot di Azure