Ich habe diese Frage gelesen MySQL Master / Slave-Replikation funktioniert nicht und seine Antwort:
Die Verwendung von Slave-Datenbanken ist im Drupal-Kern kaum implementiert. Wenn Sie Ihre eigenen Module entwickeln, müssen Aufrufe von db_query angeben, dass sie die Slave-Datenbank mit dem Array $ options verwenden möchten. Informationen zum Festlegen dieses Arrays finden Sie unter DatabaseConnection :: defaultOptions.
Gibt es eine Möglichkeit , Kätzchen zu töten, die den Kern hacken , um mehr Slave-SELECT-Abfragen zu erhalten db_query()
und db_select()
zu machen?
Standardmäßig fragen diese Funktionen den Master ab, es sei denn, sie werden ausdrücklich aufgefordert, den Slave abzufragen (siehe deren API). Sie müssen schreiben db_query($query, $args, array('target' => 'slave'))
, um den Slave abzufragen, und der Kern (und alle Module) werden nicht geschrieben, um dies zu erreichen.
Nur die Suche (siehe Slave-Teil) und der Aggregator scheinen dies zu nutzen.
Edit: 25. Oktober
Ich habe gesehen, dass Pressflow 7 nicht verfügbar ist, aber ich bin mir nicht sicher, ob es im Moment viel hilft.
Ich habe nichts Relevantes gefunden, also versuchen wir es mit ein wenig Kopfgeld, um eine Antwort zu bekommen.
Edit: 31. Oktober
Ich mache mir hauptsächlich Sorgen um Crells Kommentare zu diesem Thema: Was tun mit Sklaven? .
Hauptsächlich gibt es Probleme, wenn ich SELECT
Anfragen an den Slave sende , was mit Verzögerungen bei der Replikation und der Tatsache passiert, dass ich node_load()
einen neuen Knoten kurz nach dem Speichern machen möchte .
SELECT
Fragen? Wie gehen Sie mit Verzögerungen bei der Replikation um und der Tatsache, dass das Laden eines Knotens unmittelbar nach dem Speichern Probleme verursachen kann?