Comment appeler un cluster Redis en php

(*-*)浩
Libérer: 2023-02-25 15:50:02
original
2540 Les gens l'ont consulté

Il existe actuellement deux extensions Redis principales pour php que nous utilisons :

Comment appeler un cluster Redis en php

phpredis, qui utilise c Un outil efficace extension de PHP ; predis, qui est écrite en code PHP et est très utilisée.

Méthode phpredis (extension PHP) (apprentissage recommandé : Tutoriel vidéo PHP)

Méthode autonome phpredis

<?php
$client = new Redis();
$client->connect(&#39;10.30.5.163&#39;, &#39;7000&#39;);
echo $client->get(&#39;new_item_key:d89b561fb759fd533a8c2781ef15dd5f&#39;);
Copier après la connexion

le cluster PHPredis utilise

<?php
$redis_list = [&#39;10.30.5.162:7000&#39;,&#39;10.30.5.163:7000&#39;,&#39;10.30.5.163:7001&#39;];
$client = new RedisCluster(NUll,$redis_list);
echo $client->get(&#39;new_item_key:d89b561fb759fd533a8c2781ef15dd5f&#39;);
Copier après la connexion

Description du code

Passez NULL pour le premier paramètre, ne me demandez pas, je ne le fais pas Je ne sais pas pourquoi. Quoi qu’il en soit, je n’ai pas trouvé le document et je n’ai pas compris cet article.

Le deuxième paramètre est la liste des serveurs maîtres du cluster Redis auquel nous devons nous connecter. Nous avons 3 maîtres, remplissez-en simplement 3, vous pouvez remplir un nœud maître, ou même remplir un nœud esclave, mais les performances sont différentes, voir Partie 4

Principe du cluster<🎜. >Pourquoi redisCluster peut-il être utilisé en remplissant n'importe quelle adresse de nœud ?

En mode cluster, lorsque Redis reçoit une commande liée à la clé, il calcule d'abord l'emplacement correspondant à la clé,

Si le nœud esclave est initialisé, la commande redis sera d'abord envoyée au nœud esclave

Le nœud esclave trouve le nœud correspondant en fonction du slot Si le nœud est lui-même, la commande clé. est traité ;

Si ce n'est pas lui-même, une erreur de redirection MOVED informe le client de demander le bon nœud. Ce processus est appelé redirection MOVED

Comment appeler un cluster Redis en phpLes informations de redirection contiennent le slot correspondant à la clé et l'adresse du nœud responsable du slot selon ces informations

<. 🎜> Le client peut lancer une requête vers le bon nœud

Le client PHPREDIS peut directement lancer une requête vers le nœud où se trouve la clé en fonction des informations de redirection pour obtenir les données

Utiliser le mode cluster Predis

<?php
use Predis\Client;
require __DIR__ . &#39;/../vendor/autoload.php&#39;;
$redis_list = [
        &#39;tcp://10.30.5.163:7000&#39;,
        &#39;tcp://10.30.5.163:7001&#39;,
        &#39;tcp://10.30.5.162:7000&#39;
];
$redis = new Client($redis_list, [&#39;cluster&#39;=>&#39;redis&#39;]);
echo $redis->get(&#39;new_item_key:d89b561fb759fd533a8c2781ef15dd5f&#39;)
Copier après la connexion

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:
php
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