Bagikan melalui


Penembolokan di Aplikasi .NET Framework

Penembolokan memungkinkan Anda menyimpan data dalam memori untuk akses cepat. Ketika data diakses lagi, aplikasi bisa mendapatkan data dari cache daripada mengambilnya dari sumber asli. Ini dapat meningkatkan performa dan skalabilitas. Selain itu, penembolokan membuat data tersedia saat sumber data untuk sementara tidak tersedia.

.NET Framework menyediakan fungsionalitas penembolokan yang dapat Anda gunakan untuk meningkatkan performa dan skalabilitas aplikasi klien dan server Windows, termasuk ASP.NET.

Catatan

Dalam .NET Framework 3.5 dan versi yang lebih lama, ASP.NET menyediakan implementasi cache dalam memori di System.Web.Caching namespace layanan. Dalam versi .NET Framework sebelumnya, penembolokan hanya tersedia di namespace layanan System.Web dan karenanya memerlukan dependensi pada kelas ASP.NET. Di .NET Framework 4, namespace layanan System.Runtime.Caching berisi API yang dirancang untuk aplikasi Web dan non-Web.

Penembolokan Data

Anda dapat menyimpan informasi dengan menggunakan kelas di namespace layanan System.Runtime.Caching. Kelas penembolokan di namespace layanan 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.

  • Memicu peristiwa yang dimunculkan sebagai respons terhadap perubahan entri cache.

Kelas MemoryCache adalah implementasi cache objek dalam memori dari kelas ObjectCache. Anda dapat menggunakan kelas MemoryCache untuk sebagian besar tugas penembolokan.

Catatan

Kelas MemoryCache dimodelkan pada objek cache ASP.NET yang ditentukan di namespace layanan System.Web.Caching. Oleh karena itu, logika penembolokan internal mirip dengan logika yang disediakan dalam versi ASP.NET sebelumnya.

Untuk contoh cara menggunakan penembolokan dalam aplikasi WPF, lihat Panduan: Penembolokan Data Aplikasi di Aplikasi WPF.

Penembolokan di Aplikasi ASP.NET

Kelas caching di namespace layanan System.Runtime.Caching menyediakan fungsionalitas untuk penembolokan data di ASP.NET.

Catatan

Jika aplikasi Anda menargetkan .NET Framework 3.5 atau yang lebih lama, Anda harus menggunakan kelas penembolokan yang ditentukan di namespace layanan System.Web.Caching. Untuk informasi selengkapnya, lihat Ringkasan Penembolokan ASP.NET.

Catatan

Saat Anda mengembangkan aplikasi baru, sebaiknya gunakan kelas MemoryCache. API yang disediakan di namespace layanan System.Runtime.Caching seperti API yang disediakan di namespace layanan Cache. Oleh karena itu, API akan terbiasa jika Anda menggunakan penembolokan di versi ASP.NET yang lebih lama. Untuk contoh cara menggunakan penembolokan di aplikasi ASP.NET, lihat Panduan: Penembolokan Data Aplikasi di ASP.NET.

Penembolokan Output

Untuk menyimpan data aplikasi secara manual, Anda dapat menggunakan kelas MemoryCache di ASP.NET. ASP.NET juga mendukung penembolokan output, yang menyimpan output halaman, kontrol, dan respons HTTP yang dihasilkan dalam memori. Anda dapat mengonfigurasi penembolokan output secara deklaratif di halaman Web ASP.NET atau dengan menggunakan pengaturan dalam file Web.config. Untuk informasi selengkapnya, lihat outputCache Element untuk penembolokan (ASP.NET Pengaturan Skema).

ASP.NET memungkinkan Anda memperluas penembolokan output dengan membuat penyedia cache output kustom. Dengan menggunakan penyedia kustom, Anda dapat menyimpan konten 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 kelas OutputCacheProvider dan mengonfigurasi aplikasi untuk menggunakan penyedia cache output kustom.

Penembolokan di Layanan WCF REST

Untuk layanan WCF REST, .NET Framework memungkinkan Anda memanfaatkan penembolokan output deklaratif yang tersedia di ASP.NET. Ini memungkinkan Anda untuk menyimpan respons dari operasi layanan WCF REST Anda. Ketika pengguna mengirim permintaan HTTP GET ke layanan yang dikonfigurasi untuk penembolokan, ASP.NET mengirim kembali respons 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 penembolokan HTTP cerdas seperti yang dijelaskan dalam Spesifikasi HTTP. Untuk informasi selengkapnya, lihat Dukungan Penembolokan untuk Layanan HTTP Web WCF.

Memperluas Penembolokan di .NET Framework

Penembolokan di .NET Framework dirancang agar dapat diperluas. Kelas ObjectCache ini memungkinkan Anda membuat implementasi cache kustom. Kelas ini menyediakan anggota yang tersedia untuk semua aplikasi terkelola, termasuk Formulir Windows, 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 penembolokan, Anda bisa melakukan hal berikut:

Untuk informasi selengkapnya, lihat entri Extensible Output Caching dengan ASP.NET 4 (VS 2010 dan seri .NET Framework 4.0) di blog Scott Guthrie.

Lihat juga