Vorheriges Thema: N-Ebenen-Anwendung mit Master-Master-Replikation (für Lastenausgleich geeignet)

Nächstes Thema: N-Tier-Anwendung, die auf unterschiedlichen Einrichtungen ausgeführt werden (für Lastenausgleich und Failover geeignet)


N-Ebenen-Anwendung mit Master-Master-Replikation über mehrere Knoten (für Lastenausgleich geeignet)

Das folgende Diagramm zeigt eine typische Verwendung der MYSQLR64-Appliance in einer Webanwendung, bei der die Datenbank für vier Server in einem Master-Master-Replikatonsszenario repliziert wird. In diesem Verwendungsfall verwendet die Anwendung alle WEB- und MYSQLR64-Server für den Lastenausgleich. Auch in dem Fall, in dem eine der WEB/MYSQLR64-Instanzen fehlschlägt, kann die andere WEB/MYSQLR64-Instanz verwendet werden, um Anwendungsausfallzeit zu verhindern (MYSQLR64 ist nicht für Fehler zuständig).

N-Ebenen-Anwendung mit Master-Master-Replikation über mehrere Knoten (für Lastenausgleich geeignet)

Verwendete Appliances:

Clientanfrage trifft am Benutzer-Gateway ein. Die Gateway leitet die Anfrage an das Lastenausgleichsmodul "web_lb" weiter, das die Anfrage an den Webserver "web1", "web2", "web3" oder "web4" umleitet. Jeder Webserver verwendet seine eigene Datenbank-Appliance. Alle Datenbank-Appliances werden zirkulär verbunden, um die Aktualisierungen zu replizieren, die die Webserver von der Datenbank machen. So wird beispielsweise eine Aktualisierung von db1 nach db2, db3 und db4 repliziert. Jede MYSQLR64-Appliance verwendet ein Offset (das ihrer server_id entspricht) für ihre auto_increment-Spalten, sodass keine doppelten Einträge auftreten.

Der Webzugriff auf db1, db2, db3 und db4 erfolgt über admin-Gateway auf Port 8080, 8081, 8082 und 8083.

Die Appliances db1, db2, web1 und web2 werden so konfiguriert, dass sie ihre Protokolldateien innerhalb des Stammverzeichnisses der von logs zur Verfügung gestellten Freigabe speichern. Überdies können Administratoren über das Admin-Gateway Protokolldateien anzeigen.

Beispiel-Eigenschaftskonfiguration (Eigenschaften, die nicht aufgelistet werden, sollten mit den Standardwerten belassen werden):

db1

Eigenschaftsname

Value

Hinweise

auto_create

1

Datenbank erstellen, wenn die Volumes leer sind.

error_log_filename

db1.error

Name der Fehlerprotokolldatei, die auf dem Protokolldaten-Volume gespeichert werden soll.

error_log_level

Fehler

Fehlerprotokollierungs-Ebene

server_id

1

Masterserver 1

rpl_mode

master_and_slave

Master und Slave

db2

Eigenschaftsname

Value

Hinweise

auto_create

1

Datenbank erstellen, wenn die Volumes leer sind.

error_log_filename

db2.error

Name der Fehlerprotokolldatei, die auf dem Protokolldaten-Volume gespeichert werden soll.

error_log_level

Fehler

Fehlerprotokollierungs-Ebene

server_id

2

Masterserver 2

rpl_mode

master_and_slave

Master und Slave

db3

Eigenschaftsname

Value

Hinweise

auto_create

1

Datenbank erstellen, wenn die Volumes leer sind.

error_log_filename

db3.error

Name der Fehlerprotokolldatei, die auf dem Protokolldaten-Volume gespeichert werden soll.

error_log_level

Fehler

Fehlerprotokollierungs-Ebene

server_id

3

Masterserver 3

rpl_mode

master_and_slave

Master und Slave

db4

Eigenschaftsname

Value

Hinweise

auto_create

1

Datenbank erstellen, wenn die Volumes leer sind.

error_log_filename

db4.error

Name der Fehlerprotokolldatei, die auf dem Protokolldaten-Volume gespeichert werden soll.

error_log_level

Fehler

Fehlerprotokollierungs-Ebene

server_id

4

Masterserver 4

rpl_mode

master_and_slave

Master und Slave

Hinweise: