Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Caching memungkinkan Anda menyimpan data dalam memori untuk akses cepat. Ketika data diakses lagi, aplikasi bisa mendapatkan data dari cache alih-alih mengambilnya dari sumber asli. Hal ini dapat meningkatkan performa dan skalabilitas. Selain itu, penyimpanan sementara membuat data tersedia saat sumber data sementara tidak tersedia.
.NET Framework menyediakan fungsionalitas caching yang dapat Anda gunakan untuk meningkatkan performa dan skalabilitas baik aplikasi klien maupun server Windows, termasuk ASP.NET.
Nota
Dalam .NET Framework 3.5 dan versi yang lebih lama, ASP.NET menyediakan implementasi cache dalam memori di System.Web.Caching namespace. Dalam versi .NET Framework sebelumnya, cache hanya tersedia di ruang nama System.Web dan karenanya memerlukan ketergantungan pada kelas ASP.NET. Di .NET Framework 4, System.Runtime.Caching namespace berisi API yang dirancang untuk aplikasi Web dan non-Web.
Penyimpanan Sementara Data
Anda dapat menyimpan informasi dengan menggunakan kelas dalam System.Runtime.Caching namespace. Kelas cache dalam ruang nama ini menyediakan fitur berikut:
Jenis abstrak yang menyediakan fondasi untuk membuat implementasi cache kustom.
Implementasi cache objek dalam memori konkret.
Kelas penembolokan dasar abstrak (ObjectCache) menentukan tugas penembolokan berikut:
Membuat dan mengelola entri cache.
Menentukan informasi kedaluwarsa dan pengeluaran.
Pemicu kejadian yang diaktifkan sebagai respons terhadap perubahan pada entri cache.
Kelas MemoryCache adalah implementasi cache objek dalam memori kelas ObjectCache . Anda dapat menggunakan kelas MemoryCache untuk sebagian besar tugas penyimpanan sementara.
Nota
Kelas MemoryCache dimodelkan pada objek cache ASP.NET yang ditentukan di System.Web.Caching namespace. Oleh karena itu, logika cache internal serupa dengan logika yang tersedia pada versi ASP.NET sebelumnya.
Untuk contoh cara menggunakan caching dalam aplikasi WPF, lihat Panduan: Caching Data Aplikasi dalam Aplikasi WPF.
Cache pada Aplikasi ASP.NET
Kelas caching di System.Runtime.Caching namespace menyediakan fungsionalitas untuk pemrosesan data di ASP.NET.
Nota
Jika aplikasi Anda menargetkan .NET Framework 3.5 atau yang lebih lama, Anda harus menggunakan kelas pengelolaan cache yang ditentukan di dalam "namespace" System.Web.Caching. Untuk informasi selengkapnya, lihat Gambaran Umum Caching ASP.NET.
Nota
Saat Anda mengembangkan aplikasi baru, kami sarankan Anda menggunakan kelas .MemoryCache API yang disediakan di System.Runtime.Caching namespace seperti API yang disediakan di Cache namespace. Oleh karena itu, API ini akan tampak familiar jika Anda sudah menggunakan cache di versi-versi ASP.NET sebelumnya. Untuk contoh penggunaan caching di aplikasi ASP.NET, lihat Panduan: Penyimpanan Sementara Data Aplikasi di ASP.NET.
Penyimpanan Sementara Output
Untuk menyimpan data aplikasi secara manual, Anda dapat menggunakan MemoryCache kelas di ASP.NET. ASP.NET juga mendukung output caching, yang menyimpan hasil output dari halaman, kontrol, dan respons HTTP dalam memori. Anda dapat mengonfigurasi cache output secara deklaratif di halaman Web ASP.NET atau dengan pengaturan di file Web.config. Untuk informasi selengkapnya, lihat outputCache Element untuk penyimpanan sementara (Skema Pengaturan ASP.NET).
ASP.NET memungkinkan Anda memperluas penyimpanan sementara keluaran dengan membuat penyedia cache keluaran kustom. Dengan menggunakan penyedia kustom, Anda dapat menyimpan konten yang di-cache menggunakan perangkat penyimpanan lain seperti disk, penyimpanan cloud, dan mesin cache terdistribusi. Untuk membuat penyedia cache output kustom, Anda membuat kelas yang berasal dari OutputCacheProvider kelas dan mengonfigurasi aplikasi untuk menggunakan penyedia cache output kustom.
Penyimpanan Sementara pada Layanan REST WCF
Untuk layanan WCF REST, .NET Framework memungkinkan Anda memanfaatkan pencaching output deklaratif yang tersedia di ASP.NET. Ini memungkinkan Anda untuk menyimpan respons dari operasi layanan WCF REST Anda. Saat pengguna mengirim permintaan HTTP GET ke layanan yang dikonfigurasi untuk penyimpanan cache, ASP.NET mengirim kembali hasil penyimpanan cache, dan metode layanan tidak dipanggil. Setelah cache kedaluwarsa, saat pengguna mengirim permintaan HTTP GET, metode layanan Anda dipanggil dan respons kembali di-cache.
.NET Framework juga memungkinkan Anda menerapkan penembolokan HTTP GET kondisional. Dalam skenario REST, permintaan HTTP GET kondisional sering digunakan oleh layanan untuk menerapkan penyimpanan sementara HTTP yang cerdas seperti yang dijelaskan dalam Spesifikasi HTTP. Untuk informasi lebih lanjut, lihat Dukungan Caching untuk Layanan HTTP Web WCF.
Memperluas Caching di .NET Framework
Penyimpanan sementara dalam .NET Framework dirancang agar mudah dikembangkan. Kelas ini ObjectCache memungkinkan Anda membuat implementasi cache kustom. Kelas ini menyediakan anggota yang tersedia untuk semua aplikasi terkelola, termasuk Windows Forms, Windows Presentation Foundation (WPF), dan Windows Communications Foundation (WCF). Anda dapat melakukan ini untuk membuat kelas cache yang menggunakan mekanisme penyimpanan yang berbeda, atau jika Anda ingin kontrol terperinci atas operasi cache.
Untuk memperluas caching, Anda dapat melakukan hal berikut:
Buat kelas kustom yang berasal dari ObjectCache kelas lalu berikan implementasi cache kustom di kelas turunan.
Buat kelas yang berasal dari MemoryCache kelas dan sesuaikan atau perluas kelas turunan. Untuk contoh cara melakukannya, lihat Penembolokan Data Aplikasi dengan Menggunakan Beberapa Objek Cache dalam Aplikasi ASP.NET.
Buat kelas yang berasal dari OutputCacheProvider kelas dan konfigurasikan aplikasi untuk menggunakan penyedia cache output kustom.
Untuk informasi selengkapnya, lihat entri Extensible Output Caching dengan ASP.NET 4 (VS 2010 dan .NET Framework 4.0 Series) di blog Scott Guthrie.