Halaman ini menjelaskan cara arsitektur Cluster Memorystore for Valkey mendukung dan menyediakan ketersediaan tinggi (HA). Halaman ini juga menjelaskan konfigurasi yang direkomendasikan yang berkontribusi pada peningkatan performa dan stabilitas instance.
Ketersediaan tinggi
Memorystore for Valkey dibuat berdasarkan arsitektur dengan ketersediaan tinggi tempat klien Anda langsung mengakses VM Memorystore for Valkey terkelola. Klien Anda melakukannya dengan menghubungkan ke setiap alamat jaringan shard, seperti yang dijelaskan dalam Menghubungkan ke instance Memorystore for Redis.
Menghubungkan langsung ke shard memberikan manfaat berikut:
Koneksi langsung menghindari titik tunggal kegagalan karena setiap shard dirancang untuk gagal secara independen. Misalnya, jika traffic dari beberapa klien membebani slot (potongan ruang kunci), kegagalan shard akan membatasi dampaknya pada shard yang bertanggung jawab untuk menayangkan slot.
Koneksi langsung menghindari hop perantara, yang meminimalkan waktu round-trip (latensi klien) antara klien Anda dan VM Valkey.
Konfigurasi yang direkomendasikan
Sebaiknya buat instance multi-zona yang sangat tersedia, bukan instance satu zona karena keandalan yang lebih baik yang diberikannya. Namun, jika Anda memilih untuk menyediakan instance tanpa replika, sebaiknya pilih instance satu zona. Untuk mengetahui informasi selengkapnya, lihat Memilih instance satu zona jika instance Anda tidak menggunakan replika.
Untuk mengaktifkan ketersediaan tinggi bagi instance, Anda harus menyediakan minimal 1 node replika untuk setiap shard. Anda dapat melakukannya saat Membuat instance, atau Anda dapat Menskalakan jumlah replika menjadi minimal 1 replika per shard. Replika menyediakan Failover otomatis selama pemeliharaan terencana dan kegagalan shard yang tidak terduga.
Anda harus mengonfigurasi klien sesuai dengan panduan di Praktik terbaik klien. Dengan menggunakan praktik terbaik yang direkomendasikan, klien Anda dapat menangani peran (failover otomatis) dan perubahan penetapan slot (penggantian node, penskalaan keluar/masuk konsumen) secara otomatis dan lancar untuk instance Anda tanpa downtime.
Replika
Instance Memorystore for Valkey yang sangat tersedia adalah resource regional. Artinya, VM utama dan replika shard didistribusikan di beberapa zona untuk melindungi dari pemadaman layanan zona. Memorystore for Valkey mendukung instance dengan 0, 1, atau 2 replika per node.
Anda dapat menggunakan replika untuk meningkatkan throughput baca dengan menskalakan operasi baca.
Untuk melakukannya, Anda harus menggunakan perintah READONLY
untuk membuat koneksi
yang memungkinkan klien membaca dari replika.
Bentuk instance dengan 0 replika per node
Bentuk instance dengan 1 replika per node
Bentuk instance dengan 2 replika per node
Failover otomatis
Failover otomatis dalam shard dapat terjadi karena pemeliharaan atau kegagalan tak terduga pada node utama. Selama failover, replika dipromosikan menjadi replika utama. Anda dapat mengonfigurasi replika secara eksplisit. Layanan ini juga dapat menyediakan replika tambahan untuk sementara selama pemeliharaan internal untuk menghindari periode nonaktif.
Failover otomatis mencegah kehilangan data selama update pemeliharaan. Untuk mengetahui detail tentang perilaku failover otomatis selama pemeliharaan, lihat Perilaku failover otomatis selama pemeliharaan.
Durasi failover dan perbaikan node
Failover otomatis dapat memerlukan waktu sekitar puluhan detik untuk peristiwa yang tidak terencana seperti error proses node utama, atau kegagalan hardware. Selama waktu ini, sistem mendeteksi kegagalan, dan memilih replika untuk menjadi replika utama yang baru.
Reparasi node dapat memerlukan waktu beberapa menit agar layanan dapat mengganti node yang gagal. Hal ini berlaku untuk semua node utama dan replika. Untuk instance yang tidak memiliki ketersediaan tinggi (tidak ada replika yang disediakan), memperbaiki node utama yang gagal juga memerlukan waktu sekitar beberapa menit.
Perilaku klien selama failover yang tidak terencana
Koneksi klien kemungkinan akan direset bergantung pada sifat kegagalan. Setelah pemulihan otomatis, koneksi harus dicoba lagi dengan backoff eksponensial untuk menghindari kelebihan beban node utama dan replika.
Klien yang menggunakan replika untuk throughput baca harus bersiap menghadapi penurunan kapasitas sementara hingga node yang gagal diganti secara otomatis.
Operasi tulis yang hilang
Selama failover yang disebabkan oleh kegagalan yang tidak terduga, operasi tulis yang dikonfirmasi dapat hilang karena sifat asinkron protokol replikasi Valkey.
Aplikasi klien dapat memanfaatkan perintah WAIT Valkey untuk meningkatkan keamanan data di dunia nyata.