2012-09-25 3 views
1

J'ai l'intention d'utiliser l'architecture Master-Master (Active-Active) de MySQL dans mon projet. Dans mon projet, j'ai deux sites actifs et site de catastrophe. Sur le site actif, nous utilisons 2 serveurs de base de données MySQL - l'un est Master Active autre est Master Passive qui réplique les données sur le site Disaster. Maître actif se réplique également au Maître passif. Tous les trois serveurs d'applications écrivent uniquement sur le maître actif. Maintenant, je prévois d'utiliser Master Passive comme Master actif. Maintenant, le site actif aura deux maîtres actifs et un serveur d'application écrira sur un maître actif et deux autres serveurs d'application écriront sur le deuxième maître actif.MySQL Master (Active) - Réplication Master (Active)

Ce serait génial si vous pouvez éclairer les avantages et les inconvénients de l'utilisation de cette architecture. Quels problèmes peuvent survenir et quels sont les remèdes pour eux?

FYI .. Le collage des sessions est également utilisé depuis les serveurs Web jusqu'aux serveurs d'applications.

Merci,

Prashant Gupta

Répondre

1

Qu'est-ce que vous essayez d'atteindre? Disponibilité améliorée? Performance?

Comment envisagez-vous de gérer les connexions entre les serveurs d'applications et les instances de base de données? Des adresses IP flottantes? Mappages statiques Qu'en est-il du basculement? Quel suivi avez-vous mis en place pour mesurer la disponibilité des nœuds maîtres? Retard de réplication?

+0

Nous voulons répartir les charges d'écriture entre deux serveurs db. Comme je l'ai déjà mentionné, nous utiliserons le mappage statique du serveur d'applications vers le serveur db. Si un serveur d'applications tombe en panne, le serveur Web ne redirigera jamais les demandes vers le serveur d'applications ayant échoué. Si le serveur db échoue, cela nécessite une intervention manuelle. Nous avons déjà des scripts en place qui vérifie périodiquement la disponibilité du nœud maître. Pour la vérification de la latence de la réplication, nous utilisons heartbeat.Replication lag est 0 – user1180463

+0

'le serveur web ne redirigera jamais les demandes vers le serveur d'application défaillant' - comment cela fonctionne-t-il? 'Nous voulons distribuer les charges d'écriture entre deux serveurs db' - alors la réplication asynchrone maître-maître ne va pas aider - votre charge d'écriture sera plus élevée. – symcbean