Tanya Jawab Umum pengembangan Azure Cache for Redis

Artikel ini menyediakan jawaban atas pertanyaan umum tentang cara mengembangkan Azure Cache for Redis.

Bagaimana cara memulai Azure Cache for Redis?

Ada beberapa cara untuk memulai Azure Cache for Redis.

Jika Anda belum memiliki akun Azure, Anda dapat:

  • Buka akun Azure secara gratis. Anda mendapatkan kredit yang dapat digunakan untuk mencoba layanan Azure berbayar. Bahkan setelah kredit habis, Anda dapat menyimpan akun dan menggunakan layanan dan fitur Azure gratis.
  • Aktifkan manfaat pelanggan Visual Studio. Langganan MSDN Anda memberi Anda kredit setiap bulan yang dapat Anda gunakan untuk layanan Azure berbayar.

Apa yang dilakukan opsi konfigurasi StackExchange.Redis?

StackExchange.Redis memiliki banyak opsi. Bagian ini membahas tentang beberapa pengaturan umum. Untuk informasi lebih rinci tentang opsi StackExchange.Redis, lihat Konfigurasi StackExchange.Redis.

ConfigurationOptions Deskripsi Rekomendasi
AbortOnConnectFail Bila diatur ke true, koneksi tidak bisa terhubung kembali setelah jaringan gagal. Atur ke false dan biarkan StackExchange.Redis terhubung kembali secara otomatis.
ConnectRetry Waktu yang diperlukan untuk mengulangi upaya koneksi selama penghubungan awal. Lihat catatan berikut untuk panduan.
ConnectTimeout Waktu habis di ms untuk operasi penghubungan. Lihat catatan berikut untuk panduan.

Biasanya nilai default klien cukup. Anda dapat menyempurnakan opsi berdasarkan beban kerja Anda.

Percobaan kembali

  • Untuk ConnectRetry dan ConnectTimeout, panduan umum adalah gagal cepat dan mencoba ulang lagi. Panduan ini didasarkan pada beban kerja Anda dan berapa banyak waktu---rata-rata --- yang diperlukan klien Anda untuk mengeluarkan perintah Redis dan menerima respons.
  • Biarkan StackExchange.Redis secara otomatis terhubung kembali sebagai ganti memeriksa status koneksi dan menghubungkan kembali diri Anda sendiri. Hindari menggunakan properti ConnectionMultiplexer.IsConnected.
  • Snowballing - Anda mungkin mengalami masalah di mana Anda mencoba lagi dan mencoba lagi snowball dan tidak pernah pulih. Jika terjadi snowballing, pertimbangkan untuk menggunakan algoritma backoff retry eksponensial seperti yang dijelaskan dalam Coba lagi panduan umum yang diterbitkan oleh grup Microsoft Patterns & Practices.

Nilai batas waktu

  • Pertimbangkan beban kerja Anda dan atur nilai yang cocok. Jika Anda menyimpan nilai besar, atur batas waktu ke nilai yang lebih tinggi.

  • Atur AbortOnConnectFail ke false dan biarkan StackExchange.Redis terhubung kembali untuk Anda.

  • Gunakan satu instans berumur ConnectionMultiplexer panjang daripada membuat koneksi baru untuk setiap permintaan. Untuk contoh cara mengelola koneksi, lihat RedisConnection kelas di Menyambungkan ke cache dengan menggunakan RedisConnection.

  • Atur ConnectionMultiplexer.ClientName properti ke instans aplikasi nama unik untuk tujuan diagnostik.

  • Gunakan beberapa ConnectionMultiplexer instans untuk beban kerja kustom.

    Anda dapat mengikuti model ini jika Anda memiliki berbagai beban dalam aplikasi Anda. Contohnya:

    • Anda dapat memiliki satu multiplexer untuk menangani kunci besar.
    • Anda dapat memiliki satu multiplexer untuk menangani kunci kecil.
    • Anda dapat mengatur nilai yang berbeda untuk batas waktu koneksi dan logika coba lagi untuk setiap ConnectionMultiplexer yang Anda gunakan.
    • Atur ClientName properti pada setiap multiplexer untuk membantu diagnostik.

    Mengikuti panduan ini dapat menyebabkan latensi yang lebih efisien per ConnectionMultiplexer.

Klien Azure Cache for Redis apa yang bisa saya gunakan?

Salah satu kelebihan Redis adalah ada banyak klien yang mendukung banyak bahasa pengembangan yang berbeda. Untuk daftar klien saat ini, lihat Klien Redis. Untuk tutorial yang mencakup beberapa bahasa dan klien yang berbeda, lihat Cara menggunakan Azure Cache for Redis.

Mendapatkan nama host, port, dan kunci akses

Untuk menyambungkan ke server Azure Cache for Redis Anda, klien cache memerlukan nama host, port, dan kunci akses cache. Beberapa klien mungkin merujuk ke item-item ini dengan menggunakan nama yang sedikit berbeda. Anda bisa mendapatkan nama host, port, dan kunci di portal Azure.

  • Untuk mendapatkan kunci akses untuk cache Anda:

    1. Di portal Azure, buka cache Anda.
    2. Pada menu layanan, di bawah Pengaturan, pilih Autentikasi.
    3. Pada panel Autentikasi , pilih tab Tombol akses .
    4. Untuk menyalin nilai untuk kunci akses, pilih ikon Salin di bidang kunci.

    Cuplikan layar yang memperlihatkan cara menemukan dan menyalin kunci akses untuk instans Azure Cache for Redis.

  • Untuk mendapatkan nama host dan port untuk cache Anda:

    1. Di portal Azure, buka cache Anda.
    2. Pada menu layanan, pilih Gambaran Umum.
    3. Di bawah Esensial, untuk Nama host, pilih ikon Salin untuk menyalin nilai nama host. Nilai nama host memiliki formulir <DNS name>.redis.cache.windows.net.
    4. Untuk Port, pilih ikon Salin untuk menyalin nilai port.

    Cuplikan layar yang memperlihatkan cara menemukan dan menyalin nama host dan port untuk instans Azure Cache for Redis.

Apakah ada emulator lokal untuk Azure Cache for Redis?

Tidak ada emulator lokal untuk Azure Cache for Redis. Namun, Anda dapat menjalankan salinan komunitas Redis di komputer lokal Anda dan menyambungkannya untuk mendapatkan pengalaman serupa dengan emulator cache lokal, seperti yang ditunjukkan dalam contoh berikut:

private static Lazy<ConnectionMultiplexer>
    lazyConnection = new Lazy<ConnectionMultiplexer> (() =>
    {
        // Connect to a locally running instance of Redis to simulate
        // a local cache emulator experience.
        return ConnectionMultiplexer.Connect("127.0.0.1:6379");
    });

public static ConnectionMultiplexer Connection
{
    get
    {
        return lazyConnection.Value;
    }
}

Redis berjalan secara asli di Linux, tetapi Anda juga dapat menggunakan Subsistem Windows untuk Linux untuk menjalankan Redis pada komputer windows. Untuk informasi selengkapnya, lihat Menginstal Redis di Windows Anda dapat secara opsional mengonfigurasi file redis.conf agar lebih cocok dengan pengaturan cache default untuk Azure Cache for Redis online Anda jika Anda mau.

Bagaimana saya dapat menjalankan perintah Redis?

Anda dapat menggunakan salah satu perintah yang tercantum di perintah Redis kecuali untuk perintah yang tercantum di perintah Redis yang tidak didukung di Azure Cache for Redis. Anda memiliki beberapa opsi untuk menjalankan perintah Redis.

Jika Anda memiliki cache Standar atau Premium, Anda dapat menjalankan perintah Redis menggunakan Konsol Redis. Konsol Redis menyediakan cara yang aman untuk menjalankan perintah Redis di portal Microsoft Azure.

Anda juga dapat menggunakan alat baris perintah Redis. Untuk menggunakannya, lihat Menggunakan alat baris perintah Redis dengan Azure Cache for Redis

Mengapa Azure Cache for Redis tidak memiliki referensi pustaka kelas MSDN?

Microsoft Azure Cache for Redis didasarkan pada penyimpanan data dalam memori sumber terbuka yang populer, Redis. Anda dapat menggunakan berbagai klien Redis untuk banyak bahasa pemrograman. Setiap klien memiliki API sendiri yang melakukan panggilan ke instans Azure Cache for Redis menggunakan perintah Redis.

Karena setiap klien berbeda, Anda tidak dapat menemukan satu referensi kelas terpusat di MSDN. Setiap klien mempertahankan dokumentasi referensinya sendiri. Selain dokumentasi referensi, ada beberapa tutorial yang menunjukkan cara memulai dengan Azure Cache for Redis menggunakan bahasa dan klien cache yang berbeda. Untuk mengakses tutorial ini, lihat Cara menggunakan Azure Cache for Redis dan artikel terkait dalam daftar isi.

Bisakah saya menggunakan Azure Cache for Redis sebagai cache sesi PHP?

Ya, untuk menggunakan Azure Cache for Redis sebagai cache sesi PHP, tentukan string koneksi ke Azure Cache for Redis Anda di session.save_path.

Penting

Saat menggunakan Azure Cache for Redis sebagai cache sesi PHP, Anda harus mengkodekan URL kunci keamanan yang digunakan untuk menghubungkan ke cache seperti yang diperlihatkan dalam contoh berikut:

session.save_path = "tcp://mycache.redis.cache.windows.net:6379?auth=<url encoded primary or secondary key here>";

Jika kunci tidak dikodekan URL, Anda mungkin menerima pengecualian dengan pesan seperti: Failed to parse session.save_path

Untuk informasi selengkapnya tentang menggunakan Azure Cache for Redis sebagai cache sesi PHP dengan klien PhpRedis, lihat penangan Sesi PHP.

Apa itu database Redis?

Redis Database hanyalah pemisahan data yang logis dalam instans Redis yang sama. Memori cache dibagikan antara semua database dan konsumsi memori aktual dari database tertentu tergantung pada kunci/nilai yang disimpan dalam database tersebut. Misalnya, cache C6 memiliki memori 53 GB, dan P5 memiliki 120 GB. Anda dapat memilih untuk menempatkan semua 53 GB / 120 GB ke dalam satu database atau Anda dapat membaginya di antara beberapa database.

Catatan

Saat menggunakan Premium Azure Cache for Redis dengan pengklusteran diaktifkan, hanya database 0 yang tersedia. Batasan ini adalah batasan Redis intrinsik dan tidak khusus untuk Azure Cache for Redis.

Pelajari tentang Tanya Jawab Umum Azure Cache for Redis lainnya.