Redis
 sql >> Teknologi Basis Data >  >> NoSQL >> Redis

Menggunakan Replikasi Redis pada mesin yang berbeda (multi master)

Anda meminta solusi Active-Active, alias multi master, tetapi pertanyaan Anda menunjukkan bahwa Anda mungkin tidak membutuhkannya.

Jika Anda hanya memerlukan salah satu database yang tersedia untuk penulisan, yaitu semua penulisan selalu berjalan, Anda dapat mencapainya dengan replikasi master-slave standar Redis. Arahkan aplikasi Anda untuk menggunakan master untuk penulisan dan (berpotensi) minta slave Anda melayani beberapa pembacaan juga. Jika master gagal, promosikan slave di DC ke-2 menjadi master baru dan arahkan ulang aplikasi/klien Anda untuk menggunakannya. Pemantauan dan promosi dapat dilakukan dengan Redis' Sentinel.

Ada beberapa hal yang harus Anda pertimbangkan saat menerapkan jenis penyiapan ini. Pertama, perhatikan bahwa replikasi Redis tidak sinkron sehingga tergantung pada beban master Anda, volume penulisan, dan kualitas tautan jaringan replikasi, Anda dapat kehilangan beberapa pembaruan terkini jika terjadi failover. Kedua dan pada topik yang sama, tautan jaringan antar-DC dapat rentan terhadap bandwidth terbatas dan peningkatan latensi - Anda harus mengonfigurasi Redis untuk menangani ini dan mungkin menggunakan kompresi untuk lalu lintas tersebut (misalnya melalui terowongan SSH). Terakhir, untuk mendeteksi kegagalan secara akurat, Anda harus memiliki setidaknya 3 Penjaga di lokasi yang berbeda. Namun terlepas dari tantangan ini, itu semua bisa dilakukan.

Meskipun demikian, penyiapan multi master di mana penulisan dapat dilakukan secara sewenang-wenang terhadap basis data apa pun tidak didukung oleh Redis saat ini. Jika memang itu yang Anda butuhkan, pertimbangkan untuk menggunakan solusi lain.

Catatan:tergantung pada kebutuhan Anda, jika Anda dapat menjamin bahwa penulisan ke DC yang berbeda saling eksklusif (yaitu setiap DC hanya mendapatkan penulisan ke subset kunci yang berbeda yang tidak dibagikan oleh DC lainnya), Anda dapat menggunakan dua database dengan master di setiap DC dan slave di DC lainnya.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Bagaimana cara membuat gambar buruh pelabuhan dari repositori github

  2. ServiceStack.Redis Tidak dapat membaca transport - BasicRedisClientManager

  3. ScaleGrid Hosting Untuk Redis™ Di Akun AWS Anda Sendiri

  4. StackExchange.Redis cara berlangganan beberapa saluran

  5. Menggunakan Seledri untuk Realtime, Permintaan API Eksternal Sinkron dengan Gevent