Maison > base de données > Redis > le corps du texte

Réplication maître-esclave Redis

齐天大圣
Libérer: 2020-05-25 15:17:50
original
1330 Les gens l'ont consulté

Comme MySQL, Redis prend également en charge la réplication maître-esclave et la séparation lecture-écriture, et la configuration est beaucoup plus simple que MySQL. Jetons un coup d'œil à la réplication maître-esclave de Redis.

Établir la réplication

Par défaut, Redis est le nœud maître. Maintenant, laissez-moi vous montrer comment activer la réplication maître-esclave.

Tout d'abord, ouvrez deux services Redis. À l'exception des différents ports liés et des différents fichiers persistants, ces deux services Redis ont la même configuration

127.0.0.1:6379> keys *
1) "age"
2) "name"

127.0.0.1:6380> keys *
(empty list or set)
Copier après la connexion

6379 Il existe actuellement deux clés Redis, et 6380 est actuellement vide. Établissez une relation maître-esclave entre 6379 et 6380, avec 6379 comme nœud maître et 6380 comme nœud esclave.

Il existe deux façons d'établir la réplication :

  • Modifiez le fichier de configuration de 6380, ajoutez l'esclave de 127.0.0.1 6379 au fichier de configuration, puis redémarrez le service Redis

  • Modification dynamique, entrez directement slaveof 127.0.0.1 6379

127.0.0.1:6380> slaveof 127.0.0.1 6379
OK
127.0.0.1:6380> keys *
1) "name"
2) "age"
Copier après la connexion

Vous pouvez voir que la réplication a été établie, et maintenant les données 6380 est cohérent avec 6379 .

Exécutez la commande de réplication d'informations sur 6379 et 6380 respectivement pour voir les informations pertinentes.

127.0.0.1:6379> info replication
# Replication
role:master
connected_slaves:1
……


127.0.0.1:6380> info replication
# Replication
role:slave
master_host:127.0.0.1
master_port:6379
……
Copier après la connexion

Déconnecter la réplication

L'opération de déconnexion de la réplication est très simple, il suffit d'exécuter l'esclave de personne.

127.0.0.1:6380> slaveof no one
OK
Copier après la connexion

De plus, vous pouvez également changer directement de nœud maître. Par exemple, maintenant 6380 est le nœud esclave de 6370, et maintenant 6380 veut déconnecter la relation maître-esclave de 6379 et établir une nouvelle relation de réplication avec 6381. Ensuite, 6380 n'a besoin que d'exécuter l'esclave de 127.0.0.1 6381.

Mais vous devez faire attention lors du passage au maître. Les données précédentes du nœud esclave seront effacées, puis les données du nouveau nœud maître seront copiées. Par conséquent, si les données précédentes sont utiles et non sauvegardées, l'opération principale ne peut pas être effectuée.

Vérification du mot de passe

Si le nœud maître est configuré avec requirepass, alors le nœud esclave doit définir masterauth

Lecture seule

Par défaut, les nœuds esclaves effectuent des opérations de lecture et ne peuvent pas effectuer d'opérations d'écriture. Parce que cela est très nécessaire, si le nœud esclave effectue une opération d'écriture, cela entraînera une incohérence des données entre les nœuds maître et esclave. Si vous souhaitez écrire à partir du nœud esclave, modifiez simplement l'élément de configuration slave-read-only=no.

Scénarios d'application

Les scénarios d'application courants pour la réplication Redis incluent

  • Sauvegarde en temps réel de données, Généralement dans ce cas, il n'y a qu'un seul nœud esclave, et le nœud esclave permet une certaine persistance. La tâche principale du nœud est de sauvegarder les données en temps réel.

  • Failover, si le nœud maître échoue, vous pouvez utiliser le nœud esclave pour continuer à faire fonctionner le système

  • Séparation en lecture et en écriture, plus adaptée Dans les scénarios où il existe de nombreuses lectures, le nœud maître effectue des opérations d'écriture et plusieurs nœuds esclaves effectuent des opérations de lecture. La réplication étant effectuée de manière asynchrone, il peut y avoir un retard dans les données provenant du nœud esclave. C'est un élément auquel vous devez prêter attention pendant le développement.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!