Rubrique précédente: Application à X niveaux avec réplication maître-esclave (prévue pour l'équilibrage de charge)

Rubrique suivante: Application à X niveaux s'exécutant sur différentes infrastructures (prévue pour l'équilibrage de charge et le basculement)


Application à X niveaux avec réplication maître-maître multinoeud (prévue pour l'équilibrage de charge)

Le diagramme suivant affiche une utilisation standard de l'appliance MYSQLR64 dans une application Web dans laquelle la base de données est répliquée sur quatre serveurs dans un scénario de réplication maître-maître. Dans ces cas, l'application utilise l'ensemble des serveurs WEB et MYSQLR64 pendant l'opération d'équilibrage de charge. De même, en cas d'échec d'une des instances WEB/MYSQLR64, vous pouvez utiliser les autres instances de WEB/MYSQLR64 pour éviter le problème d'indisponibilité de l'application. (MYSQLR64 ne se préoccupe pas des échecs).

Application à X niveaux avec réplication maître-maître multinoeud (prévue pour l'équilibrage de charge)

Appliances en cours d'utilisation :

La requête client arrive sur la passerelle utilisateur. Cette dernière envoie les requêtes à l'équilibreur de charge web_lb, qui les transmet à un des serveurs Web web1, web2, web3 et web4. Chaque serveur Web utilise sa propre appliance de base de données. Toutes les appliances de base de données sont connectées de façon circulaire pour répliquer les mises à jour que les serveurs Web effectuent sur la base de données. Ainsi, une mise à jour sur db1 est répliquée sur db2, db3 et db4. Chaque appliance MYSQLR64 utilise un décalage (égal à son server_id) pour ses colonnes auto_increment afin d'éviter toute entrée en double.

L'accès Web à db1, db2, db3 et db4 est disponible via la passerelle admin sur les ports 8080, 8081, 8082 et 8083.

Les appliances db1, db2, web1 et web2 sont configurées pour stocker leurs fichiers journaux dans le répertoire racine du partage exposé par les journaux. De plus, un administrateur peut afficher des fichiers journaux via la passerelle admin.

Exemple de configuration de propriétés (les propriétés qui ne figurent pas dans les tableaux ci-dessous doivent être définies sur leurs valeurs par défaut) :

db1

Nom de propriété

Valeur

Remarques

auto_create

1

Crée la base de données si les volumes sont vides.

error_log_filename

db1.error

Nom de fichier journal d'erreurs qui doit être stocké sur le volume de données des journaux.

error_log_level

error

Niveau de journalisation des erreurs

server_id

1

Serveur maître 1

rpl_mode

master_and_slave

maître et esclave

db2

Nom de propriété

Valeur

Remarques

auto_create

1

Crée la base de données si les volumes sont vides.

error_log_filename

db2.error

Nom de fichier journal d'erreurs qui doit être stocké sur le volume de données des journaux.

error_log_level

error

Niveau de journalisation des erreurs

server_id

2

Serveur maître 2

rpl_mode

master_and_slave

maître et esclave

db3

Nom de propriété

Valeur

Remarques

auto_create

1

Crée la base de données si les volumes sont vides.

error_log_filename

db3.error

Nom de fichier journal d'erreurs qui doit être stocké sur le volume de données des journaux.

error_log_level

error

Niveau de journalisation des erreurs

server_id

3

Serveur maître 3

rpl_mode

master_and_slave

maître et esclave

db4

Nom de propriété

Valeur

Remarques

auto_create

1

Crée la base de données si les volumes sont vides.

error_log_filename

db4.error

Nom de fichier journal d'erreurs qui doit être stocké sur le volume de données des journaux.

error_log_level

error

Niveau de journalisation des erreurs

server_id

4

Serveur maître 4

rpl_mode

master_and_slave

maître et esclave

Remarques :