Bonjour,
actuellement nous gérons la répartition de charge sur les serveurs
MySQL en PHP, avec un preg_match sur la requête pour l'envoyer
soit sur le master, soit sur un slave pondéré.
Ca fonctionne bien, et le random sur la pondération répartit la
charge équitablement.
Mais quand je dois intervenir sur un serveur, je dois travailler
avec les développeurs pour supprimer temporairement un slave, puis
l'ajouter petit à petit lorsque j'ai terminé, le temps qu'il
charge ses index en mémoire...
J'aimerais gérer cette répartition de A à Z, et que ce soit fait
plus élégamment qu'un preg_match + random dans un tableau PHP ...
C'est là qu'intervient MySQL Proxy : avec son script
rw-splitting.lua il est sensé gérer tout ça.
Mais ce script est loin d'être complet, en plus je constate que la
majorité des requêtes de lecture (SELECT) vont sur le master...
Sur son site http://forge.mysql.com/wiki/MySQL_Proxy_RW_Splitting
Jan précise bien que Yes, we know that RW-Splitting is not for
production use yet, it is a Proof of Concept.
Malgré tout j'aime l'idée, donc je me demandais si je pouvais
avoir des retours d'expériences sur MySQL Proxy et
particulièrement sur ce script lua !
Et si non, si vous connaissiez un système qui analyse les requêtes
et load-balance sur les slaves et le master de manière
automatique. Il faudrait que les développeurs n'aient qu'une IP
par database et ce système se charge du reste.
--
Greg
_______________________________________________
Liste de diffusion du FRsAG
http://www.frsag.org/