Concepts
PHP Manual

Répartition de charge

Il existe quatre stratégies pour distribuer les requêtes sur les esclaves configurés :

random

Choix effectué au hasard, à chaque requête.

random once (défaut)

Choix effectué au hasard à la première requête, puis garde ce serveur pour les requêtes suivantes.

C'est le choix par défaut et le moins impactant concernant l'état des connexions.

round robin

Itère sur la liste des serveurs déclarés.

Utilisateur : via une callback

Utilisé pour implémenté une stratégie personnalisée.

L'équilibrage de charge est configuré via les fichiers de configuration au moyen des valeurs random, roundrobin, and user filters.

Les serveurs peuvent être priorisés en leur assignant un poids. Un serveur dont le poids est de 2 recevra deux fois plus de requêtes qu'un serveur dont le poids est de 1 (poids par défaut). La priorisation peut être utile en environnement hétérogène. Par exemple, vous pouvez vouloir assigner plus de requêtes à une machine puissante plutôt qu'à une autre qui l'est moins. Ou bien, vous pouvez configurer différemment des serveurs qui sont plus ou moins éloignés du client, réduisant ainsi les latences.


Concepts
PHP Manual