Ce sont toutes des solutions pour les clusters distribués Redis. Je viens de voir un article publié par InfoQ via WeChat à midi - "Meilleures pratiques pour un fonctionnement et une maintenance efficaces (03) : Technologie de cluster Redis et pratique Codis", qui est assez détaillé. , qui cible et améliore le caractère "lourd" de Redis Cluster, et souligne également les défauts de twemproxy. Malheureusement, cet article n'a pas été trouvé sur le site InfoQ. Je ne sais pas s'il n'a pas été mis à jour à temps, je ne peux donc pas publier le lien.
Parlons de quelques problèmes avec twemproxy, et vous connaîtrez les avantages du cluster redis
(1) Implémentation entièrement asynchrone, ce qui est plus compliqué à comprendre
(2) Les auto_eject_hosts tricheurs
(3) L'ajout dynamique de serveur n'est pas pris en charge
(4) mget sera automatiquement divisé, affectant les performances
Le cluster Redis met à jour les règles de routage du nœud client via la communication entre le client et le serveur, et entre le serveur et le serveur, garantissant que les requêtes du client sont toujours envoyées au bon nœud de serveur. Dans la plupart des cas, le client est envoyé au bon nœud de serveur. serveur Une seule communication est requise.
Twemproxy agit comme un proxy pour distribuer les requêtes aux nœuds, avec une couche de communication supplémentaire au milieu.
En théorie, les performances du cluster Redis sont efficaces. Bien sûr, la mise en œuvre est plus compliquée et doit être testée dans la pratique.
Personnellement, je pense que la méthode du cluster Redis sera la méthode dominante à l'avenir.
Ce sont toutes des solutions pour les clusters distribués Redis. Je viens de voir un article publié par InfoQ via WeChat à midi - "Meilleures pratiques pour un fonctionnement et une maintenance efficaces (03) : Technologie de cluster Redis et pratique Codis", qui est assez détaillé. , qui cible et améliore le caractère "lourd" de Redis Cluster, et souligne également les défauts de twemproxy. Malheureusement, cet article n'a pas été trouvé sur le site InfoQ. Je ne sais pas s'il n'a pas été mis à jour à temps, je ne peux donc pas publier le lien.
Parlons de quelques problèmes avec twemproxy, et vous connaîtrez les avantages du cluster redis
(1) Implémentation entièrement asynchrone, ce qui est plus compliqué à comprendre
(2) Les auto_eject_hosts tricheurs
(3) L'ajout dynamique de serveur
n'est pas pris en charge (4) mget sera automatiquement divisé, affectant les performances
Le cluster Redis met à jour les règles de routage du nœud client via la communication entre le client et le serveur, et entre le serveur et le serveur, garantissant que les requêtes du client sont toujours envoyées au bon nœud de serveur. Dans la plupart des cas, le client est envoyé au bon nœud de serveur. serveur Une seule communication est requise.
Twemproxy agit comme un proxy pour distribuer les requêtes aux nœuds, avec une couche de communication supplémentaire au milieu.
En théorie, les performances du cluster Redis sont efficaces.
Bien sûr, la mise en œuvre est plus compliquée et doit être testée dans la pratique.
Personnellement, je pense que la méthode du cluster Redis sera la méthode dominante à l'avenir.