Partage de technologie

6. Construction de clusters maître-esclave Redis

2024-07-11

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Construction de clusters maître-esclave Redis

1. Qu'est-ce que le cluster maître-esclave Redis ?

Le cluster maître-esclave de Redis est un cluster de séparation en lecture-écriture « un maître et plusieurs esclaves ». Le nœud maître du cluster est responsable des demandes de lecture et d'écriture du client, tandis que le nœud esclave est responsable des demandes de lecture du client. La raison pour laquelle le cluster doit être configuré en mode de séparation lecture-écriture est principalement parce que pour les clusters de bases de données, la pression des opérations d'écriture est généralement moindre et la pression de lecture est plus élevée. Ainsi, un seul nœud est responsable du traitement des opérations de demande d’écriture.

2. Construction et configuration de pseudo-clusters

Lors de l'utilisation du modèle IO à thread unique, afin d'améliorer l'utilisation du processeur, plusieurs Redis sont généralement installés sur un hôte pour créer un pseudo cluster maître-esclave Redis. Bien entendu, le scénario du pseudo-cluster concerne principalement l’apprentissage de Redis.

Le pseudo-cluster de séparation lecture-écriture à construire ci-dessous contient un maître et deux esclaves. Leurs numéros de ports correspondent à : 6380, 6381, 6382.

2.1. Copiez le fichier redis.conf

​ Dans le répertoire d'installation de Redis, mkdir un répertoire nommé cluster. Copiez ensuite le fichier redis.conf dans ce répertoire. Le fichier modifié sera inclus ultérieurement dans d'autres fichiers de configuration, donc les mêmes attributs publics de chaque nœud Reids doivent être définis dans ce fichier.

2.2. Modifier le fichier redis.conf

2.2.1, authentification principale

​ Étant donné que nous souhaitons créer un cluster maître-esclave et que chaque hôte peut lire à partir du maître, il est préférable de définir l'attribut de vérification du mot de passe requirepass. Si vous avez vraiment besoin de le configurer, assurez-vous de définir le mot de passe de chaque hôte sur la même valeur. A ce stade, deux attributs identiques doivent être définis dans chaque fichier de configuration : requirepass et msterauth. Parmi eux, requirepass est utilisé pour spécifier le mot de passe d'accès à l'hôte actuel, et masterauth est utilisé pour spécifier le mot de passe d'accès soumis lorsque l'esclave actuel est sur le maître, qui est utilisé pour permettre au maître de vérifier si son identité est légale.

2.2.2, repl-disable-tcp-nodelay
  1. Qu'est-ce que TCP-Nodelay :

    Il faut savoir que afin de réduire la bande passante du réseau, TCP souhaite toujours envoyer un bloc de données le plus volumineux possible lors de la transmission de données. Par conséquent, l'algorithme Nagle est utilisé dans TCP. Cet algorithme met en cache les données jusqu'à une certaine taille avant de les empaqueter et de les envoyer.

  2. Configuration des paramètres repl-disable-tcp-nodelay :

    Cet attribut est utilisé pour définir l'algorithme afin de désactiver la fonctionnalité TCP tcp-nodelay. Lorsqu'il est défini sur oui, il est désactivé (c'est-à-dire que les données sont mises en cache jusqu'à une certaine taille avant l'envoi). À ce moment, la communication entre le maître et l'esclave sera retardée, mais le nombre de paquets TCP utilisés sera réduit. et la bande passante du réseau sera moindre. Non, c'est le contraire. Remarque : lorsqu'il existe de nombreux niveaux maître-esclave, il est recommandé de le définir sur non pour éviter tout retard dans les données.

2.3. Construction spécifique

Article de référence :

http://t.csdnimg.cn/Fjyhw