Penembolokan penembolokan <>
Gambaran Umum
Elemen ini <caching>
memungkinkan Anda mengaktifkan atau menonaktifkan penembolokan output halaman untuk aplikasi Internet Information Services (IIS) 7. Elemen ini juga memungkinkan Anda untuk mengonfigurasi apakah IIS cache output halaman dalam mode pengguna, mode kernel, atau keduanya dan apa, jika ada, batas penembolokan output yang ingin Anda paksakan.
Elemen ini <caching>
juga berisi <profiles>
elemen yang berisi kumpulan pengaturan cache output yang dapat Anda terapkan ke halaman ASP.NET.
Penembolokan output halaman menyimpan respons halaman dinamis, seperti halaman ASP atau halaman ASP.NET, dalam memori setelah browser memintanya. Ketika permintaan berikutnya tiba untuk halaman, server mengirim respons yang di-cache alih-alih memproses ulang halaman. Cache output halaman ASP.NET terpisah dari cache output IIS 7. Dalam aplikasi yang menggunakan mode ASP.NET Terintegrasi, cache output halaman ASP.NET dapat digunakan secara terprogram untuk jenis konten apa pun, seperti cache output IIS 7.
Penembolokan output halaman mengurangi beban server dan waktu respons. Penembolokan output berfungsi paling baik dengan halaman yang semi dinamis, seperti halaman ASP.NET yang bergantung pada tabel database yang tidak sering berubah.
Penembolokan output tidak diperlukan untuk file statis, seperti file HTML, JPG, atau GIF, dan dapat menyebabkan lebih banyak overhead memori untuk halaman ASP.NET dinamis atau PHP yang sering membaca dari database yang sering berubah.
Kompatibilitas
Versi | Catatan |
---|---|
IIS 10.0 | Elemen <caching> tidak dimodifikasi dalam IIS 10.0. |
IIS 8.5 | Elemen <caching> tidak dimodifikasi dalam IIS 8.5. |
IIS 8.0 | Elemen <caching> tidak dimodifikasi dalam IIS 8.0. |
IIS 7.5 | Elemen <caching> tidak dimodifikasi dalam IIS 7.5. |
IIS 7.0 | Elemen ini <caching> diperkenalkan di IIS 7.0. |
IIS 6.0 | T/A |
Siapkan
Elemen <caching>
ini disertakan dalam penginstalan default IIS 7.
Bagaimana Caranya
Cara mengonfigurasi penembolokan output halaman
Buka Pengelola Layanan Informasi Internet (IIS):
Jika Anda menggunakan Windows Server 2012 atau Windows Server 2012 R2:
- Pada bilah tugas, klik Manajer Server, klik Alat, lalu klik Pengelola Layanan Informasi Internet (IIS).
Jika Anda menggunakan Windows 8 atau Windows 8.1:
- Tahan tombol Windows, tekan huruf X, lalu klik Panel Kontrol.
- Klik Alat Administratif, lalu klik dua kali Manajer Layanan Informasi Internet (IIS).
Jika Anda menggunakan Windows Server 2008 atau Windows Server 2008 R2:
- Pada bilah tugas, klik Mulai, arahkan ke Alat Administratif, lalu klik Pengelola Layanan Informasi Internet (IIS).
Jika Anda menggunakan Windows Vista atau Windows 7:
- Pada taskbar, klik Mulai, lalu klik Panel Kontrol.
- Klik dua kali Alat Administratif, lalu klik dua kali Manajer Layanan Informasi Internet (IIS).
Di panel Koneksi , buka koneksi, situs, aplikasi, atau direktori yang ingin Anda konfigurasi penembolokan output halamannya.
Di panel Beranda , gulir ke Penembolokan Output, lalu klik dua kali Penembolokan Output.
Di panel Tindakan , klik Tambahkan...
Dalam kotak dialog Tambahkan Aturan Singgahan , ketik ekstensi nama file yang ingin Anda cache dalam kotak Ekstensi nama file , lalu pilih opsi Penembolokan mode pengguna , opsi penembolokan mode Kernel , atau keduanya.
Pilih opsi yang ingin Anda gunakan untuk penembolokan, lalu klik OK.
Konfigurasi
Anda dapat mengonfigurasi <caching>
elemen di tingkat server dalam file ApplicationHost.config atau di situs, aplikasi, atau di tingkat direktori dalam file Web.config.
Atribut
Atribut | Deskripsi |
---|---|
enabled |
Atribut Boolean opsional. Menentukan apakah penembolokan output halaman diaktifkan. Nilai defaultnya adalah true . |
enableKernelCache |
Atribut Boolean opsional. Menentukan apakah penembolokan kernel diaktifkan. Nilai defaultnya adalah true . |
maxCacheSize |
Atribut uint opsional. Menentukan ukuran maksimum cache output. Catatan: Pengaturan ini hanya efektif pada tingkat file ApplicationHost.config. Jika Anda mengatur properti ini pada tingkat yang lebih rendah, itu tidak akan berpengaruh. Nilai defaultnya adalah 0 . |
maxResponseSize |
Atribut uint opsional. Menentukan ukuran respons maksimum yang dapat di-cache. Catatan: Pengaturan ini hanya efektif pada tingkat file ApplicationHost.config. Jika Anda mengatur properti ini pada tingkat yang lebih rendah, itu tidak akan berpengaruh. Nilai defaultnya adalah 262144 . |
Elemen Anak
Elemen | Deskripsi |
---|---|
profiles |
Elemen opsional. Berisi sekelompok pengaturan singgahan output yang dapat diterapkan ke halaman ASP.NET. |
Sampel Konfigurasi
Contoh konfigurasi berikut memungkinkan penembolokan mode pengguna dan penembolokan mode kernel, yang keduanya diaktifkan secara default di IIS 7.0. Ini juga menggunakan elemen yang <add>
terkandung oleh <profiles>
elemen untuk mengaktifkan penembolokan output untuk file dengan ekstensi nama file .asp. Ini juga menggunakan atribut kebijakan untuk menghasilkan cache halaman sampai berubah; ini melakukan hal yang sama untuk penembolokan kernel menggunakan atribut kernelCachePolicy .
<configuration>
<system.webServer>
<caching enabled="true" enableKernelCache="true">
<profiles>
<add extension=".asp" policy="CacheUntilChange" kernelCachePolicy="CacheUntilChange" />
</profiles>
</caching>
</system.webServer>
</configuration>
Contoh kode berikut mengatur ukuran cache output maksimum menjadi 1 gigabyte dan mengatur ukuran maksimum respons yang dapat disimpan dalam cache output menjadi 512 kilobyte.
<configuration>
<system.webServer>
<caching enabled="true" enableKernelCache="true" maxCacheSize="1000" maxResponseSize="512000"/>
</system.webServer>
</configuration>
Kode Sampel
Contoh berikut mengonfigurasi penembolokan output halaman untuk file dengan ekstensi nama file .asp, dan mengonfigurasi IIS untuk cache dalam mode pengguna dan mode kernel hingga file ASP berubah.
AppCmd.exe
appcmd.exe set config -section:system.webServer/caching /+"profiles.[extension='asp',policy='CacheUntilChange',kernelCachePolicy='CacheUntilChange']" /commit:apphost
Catatan
Anda harus memastikan untuk mengatur parameter penerapan ke apphost
saat Anda menggunakan AppCmd.exe untuk mengonfigurasi pengaturan ini. Ini menerapkan pengaturan konfigurasi ke bagian lokasi yang sesuai dalam file ApplicationHost.config.
C#
using System;
using System.Text;
using Microsoft.Web.Administration;
internal static class Sample {
private static void Main() {
using(ServerManager serverManager = new ServerManager()) {
Configuration config = serverManager.GetApplicationHostConfiguration();
ConfigurationSection cachingSection = config.GetSection("system.webServer/caching");
ConfigurationElementCollection profilesCollection = cachingSection.GetCollection("profiles");
ConfigurationElement addElement = profilesCollection.CreateElement("add");
addElement["extension"] = @"asp";
addElement["policy"] = @"CacheUntilChange";
addElement["kernelCachePolicy"] = @"CacheUntilChange";
profilesCollection.AddAt(0, addElement);
serverManager.CommitChanges();
}
}
}
VB.NET
Imports System
Imports System.Text
Imports Microsoft.Web.Administration
Module Sample
Sub Main()
Dim serverManager As ServerManager = New ServerManager
Dim config As Configuration = serverManager.GetApplicationHostConfiguration
Dim cachingSection As ConfigurationSection = config.GetSection("system.webServer/caching")
Dim profilesCollection As ConfigurationElementCollection = cachingSection.GetCollection("profiles")
Dim addElement As ConfigurationElement = profilesCollection.CreateElement("add")
addElement("extension") = "asp"
addElement("policy") = "CacheUntilChange"
addElement("kernelCachePolicy") = "CacheUntilChange"
profilesCollection.AddAt(0, addElement)
serverManager.CommitChanges()
End Sub
End Module
JavaScript
var adminManager = new ActiveXObject('Microsoft.ApplicationHost.WritableAdminManager');
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST";
var cachingSection = adminManager.GetAdminSection("system.webServer/caching", "MACHINE/WEBROOT/APPHOST");
var profilesCollection = cachingSection.ChildElements.Item("profiles").Collection;
var addElement = profilesCollection.CreateNewElement("add");
addElement.Properties.Item("extension").Value = "asp";
addElement.Properties.Item("policy").Value = "CacheUntilChange";
addElement.Properties.Item("kernelCachePolicy").Value = "CacheUntilChange";
profilesCollection.AddElement(addElement, 0);
adminManager.CommitChanges();
Vbscript
Set adminManager = createObject("Microsoft.ApplicationHost.WritableAdminManager")
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST"
Set cachingSection = adminManager.GetAdminSection("system.webServer/caching", "MACHINE/WEBROOT/APPHOST")
Set profilesCollection = cachingSection.ChildElements.Item("profiles").Collection
Set addElement = profilesCollection.CreateNewElement("add")
addElement.Properties.Item("extension").Value = "asp"
addElement.Properties.Item("policy").Value = "CacheUntilChange"
addElement.Properties.Item("kernelCachePolicy").Value = "CacheUntilChange"
profilesCollection.AddElement addElement, 0
adminManager.CommitChanges()
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk