Comment implémenter le cluster de déploiement Redis7.0
Version détaillée du cluster de déploiement Redis7.0
L'architecture de cluster est un moyen de connecter plusieurs ordinateurs via un réseau et d'utiliser une méthode de gestion unifiée pour apparaître en externe comme un seul ordinateur fournissant des services
Le rôle du cluster :
Répartissez la pression d'accès d'un seul serveur pour atteindre l'équilibrage de charge
Distribuez la pression de stockage d'un seul serveur pour atteindre l'évolutivité
Réduisez le désastre commercial causé par un temps d'arrêt d'un seul serveur
1. Conception de la structure interne du cluster Redis
Conception du stockage de données
Grâce à la conception d'un algorithme, calculez l'emplacement où la clé doit être enregistrée
Découpez tous les plans d'espace de stockage en 16384 parties, chaque hôte enregistre une partie et chaque partage A représente un espace de stockage, pas un espace de stockage pour une clé
Mettez la clé dans l'espace de stockage correspondant en fonction du résultat calculé
Améliorez l'évolutivité (un nouvel espace de stockage est ajouté, le nom officiel est
slot
)槽
)
集群内部通讯设计
各个数据库相互通信,保存各个库中槽的编号数据
一次命中,直接返回
一次未命中,告知具体位置
2、cluster集群内部结构搭建
在虚拟机中启动多个窗口进行集群搭建演示
主要命令在
主命令操作客户端
执行
修改redis.conf
配置文件
添加如下内容
cluster-enabled yes # 启动为节点 cluster-config-file nodes-6379.conf # cluster配置文件名,该文件属于自动生成,仅用于快速查找文件并查询文件内容 cluster-node-timeout 10000 # 节点服务响应超时时间,用于判定该节点是否下线或切换为从节点 cluster-migration-barrier <count> # master连接的slave最小数量
快速复制5分配置文件并替换里面的端口
[root@localhost conf]# sed "s/6379/6380/g" redis-6379.conf > redis-6380.conf [root@localhost conf]# sed "s/6379/6381/g" redis-6379.conf > redis-6381.conf [root@localhost conf]# sed "s/6379/6382/g" redis-6379.conf > redis-6382.conf [root@localhost conf]# sed "s/6379/6383/g" redis-6379.conf > redis-6383.conf [root@localhost conf]# sed "s/6379/6384/g" redis-6379.conf > redis-6384.conf [root@localhost conf]# sed "s/6379/6385/g" redis-6379.conf > redis-6385.conf
全部执行后可以通过
cat
指令查看内容确保被修改
启动redis服务集群
# 在第一个窗口执行6379服务 redis-server redis-6379.conf # 在第二个窗口执行6380服务 redis-server redis-6380.conf # 在第三个窗口执行6381服务 redis-server redis-6381.conf # 下面的代码依次类推到6385
执行命令查看redis进程和端口
ps -ef | grep redis-
连接节点
在src目录下查看
redis-trib.rb
在高版本中已经将启动操作移动到
redis-cli
中启动需要两个下载两个文件分别是
ruby
和gem
# 下载命令也会将gem一起 yum -y install rubygemsCopier après la connexion
# --cluster create 创建集群 # --cluster-replicas 1 指定集群的内部结构(1代表一个master连接1个slave,2代表一个master连接两个save) # 后面的连接端口按数量实现master连接哪一个slave,1对1,1对2 redis-cli --cluster create 127.0.0.1:6379 127.0.0.1:6380 127.0.0.1:6381 127.0.0.1:6382 127.0.0.1:6383 127.0.0.1:6384 --cluster-replicas 1
执行的结果如下
查看配置信息的结果如下
执行yes
命令后的信息如下
再次查看配置文件的信息,里面记录这所有集群信息
启动客户端存储数据
因为使用了集群部署,所以通过
-c
参数可以操作集群,如果不指定的是操作redis命令会提示(error) MOVED 5798 127.0.0.1:6380
注意:
-c
操作集群
redis-cli -c # 创建key,通过返回信息可以知道key存储到6380下了 127.0.0.1:6379> set name 123 -> Redirected to slot [5798] located at 127.0.0.1:6380 OK
指定端口连接客户端
# 连接指定的集群客户端 [root@localhost data]# redis-cli -c -p 6382 # 获取key 127.0.0.1:6382> get name -> Redirected to slot [5798] located at 127.0.0.1:6380 "123" 127.0.0.1:6380>
Cluster节点操作命令
查看集群节点信息
cluster nodes
进入一个从节点 redis,切换其主节点
cluster replicate <master-id>
发现一个新节点,新增主节点
cluster meet ip:port
忽略一个没有solt的节点
cluster forget <id>
手动故障转移
cluster failover
redis-trib命令
添加节点
redis-trib.rb add-node
删除节点
redis-trib.rb del-node
重新分片
redis-trib.rb reshard
3、主从下线和主从切换
1、模拟从机下线操作
在从机服务器执行
Ctrl + C
Conception de la communication interne du cluster
Chaque base de données communique entre elles et enregistre les données numériques de l'emplacement dans chaque bibliothèque🎜Un coup, renvoie directement🎜🎜🎜🎜Un échec, Informer l'emplacement spécifique🎜🎜🎜🎜2. Construction de la structure interne du cluster🎜🎜🎜Démarrer plusieurs fenêtres dans la machine virtuelle pour la démonstration de la construction du cluster🎜🎜🎜

client d'opération de commande principale
🎜 🎜🎜modifier le fichier de configuration redis.conf
🎜🎜🎜Ajouter le contenu suivant🎜🎜rrreee🎜Copiez rapidement 5 points du fichier de configuration et remplacez les ports qu'il contient🎜rrreee🎜🎜Après toute exécution, vous pouvez affichez le contenu via la commande cat
Assurez-vous qu'il est modifié🎜🎜🎜Démarrez le cluster de services redis🎜rrreee🎜Exécutez la commande pour afficher le processus redis et le port🎜rrreee🎜redis-trib .rb
dans le répertoire src🎜🎜L'opération de démarrage a été déplacée dans les versions supérieures. Allez sur redis-cli
et démarrez-le en téléchargeant deux fichiers : ruby
et gem
🎜rrreee🎜🎜🎜rrreee🎜 Les résultats sont les suivants🎜🎜

yes
sont les suivantes🎜🎜
-c Le paramètre code> peut faire fonctionner le cluster. Si la commande redis n'est pas spécifiée, elle demandera <. code>(erreur) DÉPLACEMENT 5798 127.0.0.1:6380</.>
🎜🎜Remarque : -c
exploite le cluster🎜 🎜rrreee🎜Spécifiez le port pour se connecter au client🎜rrreee🎜 Commande d'opération du nœud de cluster🎜🎜Afficher les informations sur le nœud de cluster🎜rrreee🎜Entrez un nœud esclave redis et changez son nœud maître🎜rrreee🎜Découvrez un nouveau nœud, nouveau Augmentez le nœud principal 🎜rrreee🎜Ignorez un nœud sans solt🎜rrreee🎜 Basculement manuel🎜rrreee🎜commande redis-trib🎜🎜Ajouter un nœud🎜rrreee🎜Supprimer un nœud🎜rrreee🎜Reshard🎜rrreee🎜 3. Maître-esclave hors ligne et commutation maître-esclave🎜🎜1. opération🎜🎜🎜Exécuter le service de téléchargement Ctrl + C
sur le serveur esclave🎜🎜🎜Observer l'état de l'hôte connecté, l'hôte Si l'esclave ne peut pas être connecté dans les 10 secondes, il sera marqué comme échoué .Les autres services du cluster ne parviendront pas à se connecter et les autres services recevront les informations. Redémarrez l'esclave et le maître se reconnectera à l'esclave 🎜🎜🎜 Si l'hôte se déconnecte, l'esclave basculera vers un certain emplacement. l'hôte revient en ligne, l'hôte d'origine deviendra l'esclave 🎜🎜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!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

1. Démarrez le menu [Démarrer], entrez [cmd], cliquez avec le bouton droit sur [Invite de commandes] et sélectionnez Exécuter en tant qu'[Administrateur]. 2. Entrez les commandes suivantes dans l'ordre (copiez et collez soigneusement) : SCconfigwuauservstart=auto, appuyez sur Entrée SCconfigbitsstart=auto, appuyez sur Entrée SCconfigcryptsvcstart=auto, appuyez sur Entrée SCconfigtrustedinstallerstart=auto, appuyez sur Entrée SCconfigwuauservtype=share, appuyez sur Entrée netstopwuauserv , appuyez sur Entrée netstopcryptS.

Les goulots d'étranglement des fonctions PHP entraînent de faibles performances, qui peuvent être résolues en suivant les étapes suivantes : localisez la fonction de goulot d'étranglement et utilisez des outils d'analyse des performances. Mise en cache des résultats pour réduire les recalculs. Traitez les tâches en parallèle pour améliorer l’efficacité de l’exécution. Optimisez la concaténation des chaînes, utilisez plutôt les fonctions intégrées. Utilisez des fonctions intégrées au lieu de fonctions personnalisées.

La stratégie de mise en cache dans GolangAPI peut améliorer les performances et réduire la charge du serveur. Les stratégies couramment utilisées sont : LRU, LFU, FIFO et TTL. Les techniques d'optimisation incluent la sélection du stockage de cache approprié, la mise en cache hiérarchique, la gestion des invalidations, ainsi que la surveillance et le réglage. Dans le cas pratique, le cache LRU est utilisé pour optimiser l'API pour obtenir des informations utilisateur à partir de la base de données. Les données peuvent être rapidement récupérées du cache. Sinon, le cache peut être mis à jour après l'avoir obtenu à partir de la base de données.

Dans le développement PHP, le mécanisme de mise en cache améliore les performances en stockant temporairement les données fréquemment consultées en mémoire ou sur disque, réduisant ainsi le nombre d'accès à la base de données. Les types de cache incluent principalement le cache de mémoire, de fichiers et de bases de données. En PHP, vous pouvez utiliser des fonctions intégrées ou des bibliothèques tierces pour implémenter la mise en cache, telles que cache_get() et Memcache. Les applications pratiques courantes incluent la mise en cache des résultats des requêtes de base de données pour optimiser les performances des requêtes et la mise en cache de la sortie des pages pour accélérer le rendu. Le mécanisme de mise en cache améliore efficacement la vitesse de réponse du site Web, améliore l'expérience utilisateur et réduit la charge du serveur.

L'utilisation du cache Redis peut considérablement optimiser les performances de la pagination du tableau PHP. Cela peut être réalisé en suivant les étapes suivantes : Installez le client Redis. Connectez-vous au serveur Redis. Créez des données de cache et stockez chaque page de données dans un hachage Redis avec la clé « page : {page_number} ». Récupérez les données du cache et évitez les opérations coûteuses sur les grandes baies.

Vous devez d’abord définir la langue du système sur l’affichage chinois simplifié et redémarrer. Bien sûr, si vous avez déjà modifié la langue d'affichage en chinois simplifié, vous pouvez simplement ignorer cette étape. Ensuite, commencez à utiliser le registre, regedit.exe, accédez directement à HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlNlsLanguage dans la barre de navigation de gauche ou dans la barre d'adresse supérieure, puis modifiez la valeur de la clé InstallLanguage et la valeur de la clé par défaut sur 0804 (si vous souhaitez la changer en anglais en- nous, vous devez d'abord définir la langue d'affichage du système sur en-us, redémarrer le système, puis tout changer en 0409). Vous devez redémarrer le système à ce stade.

Oui, Navicat peut se connecter à Redis, ce qui permet aux utilisateurs de gérer les clés, d'afficher les valeurs, d'exécuter des commandes, de surveiller l'activité et de diagnostiquer les problèmes. Pour vous connecter à Redis, sélectionnez le type de connexion « Redis » dans Navicat et saisissez les détails du serveur.

1. Tout d'abord, double-cliquez sur l'icône [Ce PC] sur le bureau pour l'ouvrir. 2. Double-cliquez ensuite sur le bouton gauche de la souris pour accéder à [Lecteur C]. Les fichiers système seront généralement automatiquement stockés dans le lecteur C. 3. Recherchez ensuite le dossier [windows] dans le lecteur C et double-cliquez pour entrer. 4. Après avoir accédé au dossier [windows], recherchez le dossier [SoftwareDistribution]. 5. Après avoir entré, recherchez le dossier [télécharger], qui contient tous les fichiers de téléchargement et de mise à jour Win11. 6. Si nous souhaitons supprimer ces fichiers, supprimez-les simplement directement dans ce dossier.
