Apa itu Azure Cache for Redis?
Azure Cache for Redis menyediakan penyimpanan data dalam memori berdasarkan perangkat lunak Redis. Redis meningkatkan performa dan skalabilitas aplikasi yang menggunakan penyimpanan data backend dengan berat. Ini dapat memproses permintaan aplikasi dalam volume besar dengan menyimpan data yang sering diakses dalam memori server, yang dapat ditulis dan dibaca dari dengan cepat. Redis menghadirkan solusi penyimpanan data latensi rendah dan throughput tinggi yang penting untuk aplikasi modern.
Azure Cache for Redis menawarkan sumber terbuka Redis (OSS Redis) dan produk komersial dari Redis Inc. (Redis Enterprise) sebagai layanan terkelola. Azure Cache for Redis menyediakan instans server Redis yang aman dan khusus serta kompatibilitas API Redis penuh. Microsoft mengoperasikan layanan, dihosting di Azure, dan dapat digunakan oleh aplikasi apa pun di dalam atau di luar Azure.
Azure Cache for Redis dapat digunakan sebagai cache data atau konten terdistribusi, penyimpanan sesi, broker pesan, dan banyak lagi. Ini dapat disebarkan mandiri. Atau, dapat disebarkan bersama dengan layanan database Azure lainnya, seperti Azure SQL atau Azure Cosmos DB.
Skenario utama
Azure Cache for Redis meningkatkan kinerja aplikasi dengan mendukung pola arsitektur aplikasi umum. Beberapa yang paling umum termasuk pola berikut:
Pola | Deskripsi |
---|---|
Cache data | Database seringkali terlalu besar untuk dimuat langsung ke dalam cache. Adalah umum untuk menggunakan pola cache-aside untuk memuat data ke dalam cache hanya sesuai kebutuhan. Ketika sistem membuat perubahan pada data, sistem juga dapat memperbarui cache, yang kemudian didistribusikan ke klien lain. Selain itu, sistem dapat menetapkan kedaluwarsa pada data, atau menggunakan kebijakan penggusuran untuk memicu pembaruan data ke dalam cache. |
Cache konten | Banyak halaman web dihasilkan dari templat yang menggunakan konten statis seperti header, catatan kaki, spanduk. Item statis ini seharusnya tidak sering berubah. Menggunakan cache dalam memori menyediakan akses cepat ke konten statis dibandingkan dengan backend datastore. Pola ini mengurangi waktu pemrosesan dan beban server, memungkinkan server web menjadi lebih responsif. Ini dapat memungkinkan Anda untuk mengurangi jumlah server yang diperlukan untuk menangani beban. Azure Cache for Redis menyediakan Penyedia Cache Output Redis untuk mendukung pola ini dengan ASP.NET. |
Penyimpanan sesi | Pola ini biasanya digunakan dengan keranjang belanja dan data riwayat pengguna lainnya yang mungkin dikaitkan oleh aplikasi web dengan cookie pengguna. Menyimpan terlalu banyak dalam cookie dapat memiliki efek negatif pada performa saat ukuran cookie tumbuh dan dilewatkan dan divalidasi dengan setiap permintaan. Solusi umum menggunakan cookie sebagai kunci untuk mengkueri data dalam database. Saat Anda menggunakan cache dalam memori, seperti Azure Cache for Redis, untuk mengaitkan informasi dengan pengguna lebih cepat daripada berinteraksi dengan database relasional lengkap. |
Antrean pekerjaan dan pesan | Aplikasi sering menambahkan tugas ke antrean ketika operasi yang terkait dengan permintaan membutuhkan waktu untuk dijalankan. Operasi yang berjalan lebih lama diantrikan untuk diproses secara berurutan, seringkali oleh server lain. Metode menunda pekerjaan ini disebut antrean tugas. Azure Cache for Redis menyediakan antrean terdistribusi untuk mengaktifkan pola ini di aplikasi Anda. |
Transaksi terdistribusi | Aplikasi terkadang memerlukan serangkaian perintah terhadap penyimpanan data backend untuk dijalankan sebagai operasi atomik tunggal. Semua perintah harus berhasil, atau semua harus digulirkan kembali ke status awal. Azure Cache for Redis mendukung eksekusi sekumpulan perintah sebagai transaksi tunggal. |
Versi Redis
Azure Cache for Redis mendukung OSS Redis versi 4.0.x dan 6.0. Kami membuat keputusan untuk melewati Redis 5.0 untuk membawa Anda versi terbaru. Sebelumnya, Azure Cache for Redis mempertahankan satu versi Redis. Di masa mendatang, Anda dapat memilih dari peningkatan rilis utama yang lebih baru dan setidaknya satu versi stabil yang lebih lama. Anda dapat memilih versi yang paling sesuai untuk aplikasi Anda.
Tingkat layanan
Azure Cache for Redis tersedia dalam tingkatan berikut:
Tingkat | Deskripsi |
---|---|
Dasar | Cache OSS Redis berjalan pada satu komputer virtual. Tingkat ini tidak memiliki perjanjian tingkat layanan (SLA) dan ideal untuk beban kerja pengembangan/pengujian dan noncritical. |
Standard | Cache OSS Redis yang berjalan pada dua komputer virtual dalam konfigurasi yang direplikasi. |
Premium | Cache OSS Redis berperforma tinggi. Tingkat ini menawarkan throughput yang lebih tinggi, latensi yang lebih rendah, ketersediaan yang lebih baik, dan lebih banyak fitur. Cache premium digunakan pada komputer virtual yang lebih kuat dibandingkan dengan komputer virtual untuk cache Dasar atau Standar. |
Perusahaan | Cache berperforma tinggi yang didukung oleh perangkat lunak Redis Enterprise Redis Inc. Tingkat ini mendukung modul Redis termasuk RediSearch, RedisBloom, RedisJSON, dan RedisTimeSeries. Selain itu, tingkat ini menawarkan ketersediaan yang lebih tinggi daripada tingkat Premium. |
Enterprise Flash | Cache besar hemat biaya yang didukung oleh perangkat lunak Redis Enterprise Redis Inc. Tingkat ini memperluas penyimpanan data Redis ke memori nonvolatile, yang lebih murah daripada DRAM, pada VM. Cara ini mengurangi biaya memori per-GB secara keseluruhan. |
Perbandingan fitur
Harga Azure Cache for Redis memberikan perbandingan terperinci dari setiap tingkatan. Tabel berikut ini membantu menguraikan beberapa fitur yang didukung oleh tingkatan:
Deskripsi Fitur | Dasar | Standard | Premium | Perusahaan | Enterprise Flash |
---|---|---|---|---|---|
Perjanjian Tingkat Layanan (SLA) | Tidak | Ya | Ya | Ya | Ya |
Enkripsi data saat transit | Ya | Ya | Ya | Ya | Ya |
Isolasi jaringan | Ya | Ya | Ya | Ya | Ya |
Penskalaan | Ya | Ya | Ya | Ya | Ya |
Pengklusteran OSS | Tidak | No | Ya | Ya | Ya |
Persistensi data | Tidak | No | Ya | Pratinjau | Pratinjau |
Zona redundansi | No | Pratinjau | Pratinjau | Tersedia | Tersedia |
Replikasi geografis | Tidak | Tidak | Ya (Pasif) | Ya (Aktif) | Ya (Aktif) |
Log audit koneksi | Tidak | Tidak | Ya (Berbasis polling) | Ya (Berbasis peristiwa) | Ya (Berbasis peristiwa) |
Modul Redis | Tidak | No | No | Ya | Pratinjau |
Import/Export | Tidak | No | Ya | Ya | Ya |
Reboot | Ya | Ya | Ya | No | Tidak |
Memperbarui saluran dan Menjadwalkan pembaruan | Ya | Ya | Ya | No | No |
Catatan
Tingkat Enterprise Flash saat ini hanya mendukung modul RediSearch (dalam pratinjau) dan modul RedisJSON.
Catatan
Tingkat Enterprise dan Enterprise Flash saat ini hanya mendukung peningkatan dan peluasan skala. Menurunkan skala dan menskalakan masuk belum didukung.
Memilih tingkat yang tepat
Pertimbangkan opsi berikut saat memilih tingkat Azure Cache for Redis:
- Memori: Tingkat Dasar dan Standar menawarkan 250 MB – 53 GB; Tingkat Premium 6 GB - 1,2 TB; Tingkat Perusahaan 1 GB - 2 TB, dan tingkat Enterprise Flash 300 GB - 4,5 TB. Untuk membuat instans cache berukuran lebih besar, Anda dapat menggunakan peluasan skala. Untuk informasi selengkapnya, lihat Harga Azure Cache for Redis.
- Performa: Cache di tingkat Premium dan Enterprise disebarkan pada perangkat keras yang memiliki prosesor lebih cepat, memberikan kinerja yang lebih baik dibandingkan dengan tingkat Dasar atau Standar. Tingkat Perusahaan biasanya memiliki performa terbaik untuk sebagian besar beban kerja, terutama dengan instans cache yang lebih besar. Selengkapnya, lihat Pengujian kinerja.
- Inti khusus untuk server Redis: Semua cache kecuali C0 menjalankan vCPU khusus. Tingkat Dasar, Standar, dan Premium berjalan sumber terbuka Redis, yang secara desain hanya menggunakan satu utas untuk pemrosesan perintah. Pada tingkat ini, memiliki lebih banyak vCPU biasanya meningkatkan performa throughput karena Azure Cache for Redis menggunakan vCPU lain untuk pemrosesan I/O atau untuk proses OS. Namun, menambahkan lebih banyak vCPU per instans mungkin tidak menghasilkan peningkatan performa linier. Peluasan skala biasanya meningkatkan performa lebih dari peningkatan skala di tingkat ini. Baik tingkat Enterprise dan Enterprise Flash berjalan di Redis Enterprise, yang mampu menggunakan beberapa vCPU per instans, yang juga dapat secara signifikan meningkatkan performa di atas tingkat lain. Untuk tingkat flash Enterprise dan Enterprise, peningkatan skala disarankan sebelum penskalaan. Untuk informasi selengkapnya, lihat Pemanfaatan Sharding dan CPU.
- Performa jaringan: Jika Anda memiliki beban kerja yang membutuhkan throughput tinggi, tingkat Premium atau Enterprise menawarkan lebih banyak bandwidth dibandingkan dengan Dasar atau Standar. Juga dalam setiap tingkatan, cache ukuran yang lebih besar memiliki lebih banyak bandwidth karena komputer virtual yang mendasari yang meng-host cache. Batas bandwidth yang lebih tinggi membantu Anda menghindari saturasi jaringan yang menyebabkan batas waktu dalam aplikasi Anda. Selengkapnya, lihat Pengujian kinerja.
- Jumlah maksimum koneksi klien:Tingkat Premium dan Enterprise menawarkan jumlah maksimum klien yang dapat terhubung ke Redis, menawarkan jumlah koneksi yang lebih tinggi untuk cache berukuran lebih besar. Pengklusteran meningkatkan jumlah total bandwidth jaringan yang tersedia untuk cache berkluster.
- Ketersediaan tinggi: Azure Cache for Redis menyediakan beberapa opsi ketersediaan tinggi. Ini menjamin bahwa cache Standar, Premium, atau Enterprise tersedia sesuai dengan SLA kami. SLA hanya mencakup konektivitas ke titik akhir cache. SLA tidak mencakup perlindungan dari kehilangan data. Sebaiknya gunakan fitur kegigihan data Redis di tingkat Premium dan Enterprise untuk meningkatkan ketahanan terhadap kehilangan data.
- Kegigihan data: Tingkat Premium dan Enterprise memungkinkan Anda untuk mempertahankan data cache ke akun Azure Storage dan Disk Terkelola masing-masing. Masalah infrastruktur yang mendasarinya dapat mengakibatkan potensi kehilangan data. Sebaiknya gunakan fitur kegigihan data Redis di tingkat-tingkat ini untuk meningkatkan ketahanan terhadap kehilangan data. Azure Cache for Redis menawarkan opsi RDB dan AOF (pratinjau). Kegigihan data dapat diaktifkan melalui portal Microsoft Azure dan CLI. Untuk tingkat Premium, lihat Cara mengonfigurasi kegigihan untuk Azure Cache for Redis Premium.
- Isolasi jaringan: Penyebaran Azure Private Link dan Virtual Network (VNet) memberikan keamanan dan isolasi lalu lintas yang ditingkatkan untuk Azure Cache for Redis Anda. VNet memungkinkan Anda membatasi akses lebih lanjut melalui kebijakan kontrol akses jaringan. Untuk informasi selengkapnya, lihat Azure Cache for Redis dengan Azure Private Link dan Cara mengonfigurasi dukungan Jaringan Virtual untuk Azure Cache for Redis Premium.
- Modul Redis: Tingkat perusahaan mendukung RediSearch, RedisBloom, RedisTimeSeries, dan RedisJSON. Modul-modul ini menambahkan jenis data dan fungsionalitas baru ke Redis.
Anda dapat menskalakan cache Anda dari tingkat Dasar hingga Premium setelah dibuat. Penskalaan ke tingkat yang lebih rendah saat ini tidak didukung. Untuk instruksi penskalaan langkah demi langkah, lihat Cara Menskalakan Azure Cache for Redis dan Cara menskalakan - Tingkat Dasar, Standar, dan Premium.
Pertimbangan khusus untuk tingkat Perusahaan
Tingkat Perusahaan mengandalkan Redis Enterprise, varian komersial Redis dari Redis Inc. Pelanggan memperoleh dan membayar lisensi untuk perangkat lunak ini melalui penawaran Azure Marketplace. Azure Cache for Redis mengelola akuisisi lisensi sehingga Anda tidak perlu melakukannya secara terpisah. Untuk membeli di Azure Marketplace, Anda harus memiliki prasyarat berikut:
- Langganan Azure Anda memiliki instrumen pembayaran yang valid. Kredit Azure atau langganan MSDN gratis tidak didukung.
- Organisasi Anda mengizinkan pembelian Azure Marketplace.
- Jika Anda menggunakan Marketplace privat, marketplace tersebut harus berisi penawaran Redis Inc. Enterprise.
Penting
Azure Cache for Redis Enterprise memerlukan Load Balancer jaringan standar yang dibebankan secara terpisah dari instans cache itu sendiri. Saat ini, biaya ini diserap oleh Azure Cache for Redis dan tidak diteruskan kepada pelanggan. Ini dapat berubah di masa depan. Untuk informasi selengkapnya, lihat Harga Load Balancer.
Jika cache Enterprise dikonfigurasi untuk beberapa Zona Ketersediaan, biaya transfer data diserap oleh azure cache for Redis dan tidak diteruskan ke pelanggan. Ini dapat berubah di masa mendatang, di mana transfer data akan ditagih dengan tarif bandwidth jaringan standar
Selain itu, kegigihan data menambahkan Disk terkelola. Penggunaan sumber daya ini gratis selama pratinjau publik kegigihan data Enterprise. Ini dapat berubah saat fitur menjadi tersedia secara umum.
Ketersediaan menurut wilayah
Azure Cache for Redis terus berkembang ke wilayah baru. Untuk melihat ketersediaan menurut wilayah, lihat Produk tersedia menurut wilayah.
Konten terkait
- Membuat cache Redis open-source
- Membuat cache Redis Enterprise
- Menggunakan Azure Cache for Redis dalam ASP.NET web baru
- Menggunakan Azure Cache for Redis di .NET Core
- Menggunakan Azure Cache for Redis di .NET Framework
- Menggunakan Azure Cache for Redis di Node.js
- Menggunakan Azure Cache for Redis di Java
- Menggunakan Azure Cache for Redis di Python