7

すべての着信読み取りクエリを mongo サーバーのスレーブにヒットするように設定しようとしています。

PHPドキュメントに次への参照があります。

MongoCursor::$slaveOkay = true;

ただし、これはクエリをスレーブに送信するように設定しているようです。他のことをするわけではありません。サーバーへの接続は次のようになります。

$mongo = new Mongo("mongodb://my.server:27017", 
                      array("replicaSet" => 'replicaSet', "persist" => "pool")
                  );
  • 読み取りのためにのみスレーブに接続したい場合、持続接続で何か違うことをする必要がありますか?

  • プライマリでの書き込みが着信読み取り要求をブロックしないように、スレーブのみをヒットするようにクエリをターゲットにするにはどうすればよいですか。

PHP docs は私にこの例を示しています:

$db->setSlaveOkay(true);
$c = $db->myCollection;

$cursor = $c->find();

ただし、これが上記の違いと、両方が必要かどうかについて混乱しています。

4

1 に答える 1