Concepts
PHP Manual

Clusters supportés

Toute application utilisant n'importe quel cluster MySQL est soumises aux mêmes tâches:

Le plugin est optimisé pour gérer ces tâches dans un contexte de réplication MySQL asynchrone classique, à savoir un seul maitre et plusieurs esclaves (copie primaire). Dans ce cas, toutes les tâches listées plus haut doivent être gérées coté client.

D'autres types de clusters MySQL ont moins d'implication coté client. Par exemple, si tous les noeuds du cluster peuvent répondre aux lectures et aux écritures, aucune séparation ne sera nécessaire (plusieurs maîtres, mise à jour total). Si tous les noeuds sont synchrones, ils sont tous éligibles avec le même poids, ce qui simplifie la tâche de selection. Dans de tels cas, le plugin doit être reconfiguré pour désactiver certaines logiques, comme la séparation des lectures/écritures.

Note: But de la documentation

La documentation décrit l'utilisation du plugin dans un cas classique de réplication asynchrone (copie primaire). C'est le cas de base, qui a inspiré l'écriture du plugin. D'autres types de clusters sont décrits brièvement ci-dessous, nous continuons à travailler dessus actuellement.

Clusters asynchrones avec un seul maitre

Cas d'utilisation de base du plugin.

Note: Version requise

Certains paramètres ne sont disponibles qu'à partir de mysqlnd_ms 1.2.0-alpha.

Clusters asynchrones avec plusieurs maitres

Actuellement non supporté.

Le plugin n'a pas de fonctionnalité intégrée lui permettant de diriger certaines écritures sur certains maitres. Plus tard, le filtrage sur table sera peut-être ajouté, il permettrait de restreindre les lectures et les écritures à certains esclaves ou maitres, en se basant sur la base de données et/ou la table intérrogée.

Cette fonctionnalité est préparée dans le code source du plugin, mais elle est actuellement instable et ne devrait pas être utilisée. Les rapports de bugs sur cette fonctionnalités seront rejetés.

Clusters synchrones, comme MySQL Cluster

MySQL Cluster est une solution de cluster synchrone. Tous les noeuds acceptent des lectures et des écritures. D'un point de vue du plugin, tous les noeuds devraient alors être considérés comme des maitres.

Utilisez les fonctionnalités d'équilibre de charge et de reprise sur panne seulement.

Désactiver la répartition des lectures/écritures.

Ne configurez que les maitres.


Concepts
PHP Manual