Cet article vous présente principalement le principe de fonctionnement de Memcached.
L'atome traité par Memcached est chaque paire (clé, valeur) (ci-après dénommée paire kv). La clé sera convertie en clé de hachage via un algorithme de hachage pour faciliter la recherche, la comparaison et le hachage. autant que possible. Dans le même temps, Memcached utilise un hachage à deux niveaux, qui est conservé via une grande table de hachage.
Memcached se compose de deux composants principaux : le serveur et le client. Dans une requête memcached, le client détermine d'abord le serveur sur lequel se trouve la paire kv en calculant la valeur de hachage de l'emplacement de la clé. Lorsque le serveur est déterminé, le client enverra une requête de requête au serveur correspondant pour lui permettre de trouver les données exactes. Puisqu'il n'y a pas d'interaction ou de protocole de multidiffusion entre eux, l'impact de l'interaction Memcached sur le réseau est minimisé.
Par exemple : considérons le scénario suivant, il y a trois clients, c1, c2, c3 et trois ms, s1, s2, s3 :
Définir la paire kv
c1 Je veux pour définir key=”com”, value=”iQiyi”
c1 obtient la liste des serveurs, effectue une conversion de hachage sur la clé et détermine l'emplacement du serveur où la paire kv est stockée en fonction de la valeur de hachage
s2 est sélectionné
c1 Se connecte à s2, s2 reçoit la demande et enregistre (key=”com”, value=”iQiyi”)
Obtenir la paire kv
c3 veut obtenir la valeur de key= ”com”
c3 utilise le même algorithme de hachage pour calculer la valeur de hachage et détermine que la valeur de key="aa" existe sur s2
c3 se connecte à s2 et obtient value="iQiyi" de s2
toutes les autres données de c1, c2, les requêtes de c3 qui souhaitent obtenir la valeur de key="com" seront envoyées à s2
Si vous souhaitez en savoir plus sur Memcached, vous pouvez suivre le Tutoriel vidéo Memcached ou sur le site PHP chinois Memcached Manual .
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!