4
MySQLマスター/スレーブ構成を活用するコアを取得する方法は?
MySQLマスター/スレーブレプリケーションが機能しないという質問とその回答を読みました。 スレーブデータベースの使用は、Drupalコアではほとんど実装されていません。独自のモジュールを開発している場合、db_queryの呼び出しでは、$ options配列を使用してスレーブデータベースを使用することを指定する必要があります。この配列の設定方法については、DatabaseConnection :: defaultOptionsを参照してください。 子猫を殺さずにコアをハッキングして、スレーブSELECTクエリを取得db_query()およびdb_select()作成する方法はありますか? デフォルトでは、これらの関数は、スレーブにクエリするように特に指示されない限り、マスターにクエリを実行します(APIを参照)。db_query($query, $args, array('target' => 'slave'))これを達成するためにスレーブとコア(およびすべてのモジュール)をクエリするために記述する必要があります。 検索(スレーブ部分を参照)とアグリゲーターのみがこれを活用しているようです。 編集: 10月25日 プレスフロー7が出ているのを見ましたが、今それが大いに役立つかどうかわかりません。 何か関連するものが見つからなかったので、答えを得るのを助けるためにちょっとした賞金を試しましょう。 編集: 10月31日 主に、このトピックに関するCrellのコメントを心配しています:スレーブをどうするか?。 主SELECTに、スレーブにクエリを送信する場合、レプリケーションの遅延で何が起こるかnode_load()、新しいノードを保存した直後にやりたいことがあるという事実に問題があります。
21
7
performance
database