MongoCommandCursor::setReadPreference

(PECL mongo >=1.6.0)

MongoCommandCursor::setReadPreferenceSet the read preference for this command

Opis

public MongoCommandCursor::setReadPreference ( string $read_preference [, array $tags ] ) : MongoCommandCursor

Parametry

read_preference

Tryb preferencji odczytu: MongoClient::RP_PRIMARY, MongoClient::RP_PRIMARY_PREFERRED, MongoClient::RP_SECONDARY, MongoClient::RP_SECONDARY_PREFERRED, or MongoClient::RP_NEAREST.

tags

Tablica jednego lub więcej zbiorów tagów, gdzie każdy zbiór tagów jest sam w sobie tablicą kryteriów stosowanych do dopasowania tagów na elementach zbioru replik.

Zwracane wartości

Returns this cursor.

Błędy/Wyjątki

Generuje błąd poziomu E_WARNING jeśli parametr jest nieprawidłowy, lub podano jeden lub więcej zbiorów tagów przy stosowaniu trybu preferencji odczytu MongoClient::RP_PRIMARY.

Przykłady

Przykład #1 MongoCommandCursor::setReadPreference() tag set array syntax example

<?php

$m 
= new MongoClient('mongodb://rs1.example.com:27017', array('replicaSet' => 'myReplSetName'));
$collection $m->selectCollection('test''people');

$cursor $collection->aggregateCursor( [
    [ 
'$group' => [ '_id' => '$name''points' => [ '$sum' => '$points' ] ] ],
    [ 
'$sort' => [ 'points' => -] ],
] );

// Prefer the nearest server in the "east" data center also used for reporting,
// but fall back to a server in the "west" data center
$cursor->setReadPreference(MongoClient::RP_NEAREST, [
    [ 
'dc' => 'east''use' => 'reporting' ],
    [ 
'dc' => 'west' ],
] );

foreach (
$cursor as $person) {
    
// ...
}

// If the read preference is changed, it will be used the next time the cursor
// is rewound and the command is re-executed.
$cursor->setReadPreference(MongoClient::RP_PRIMARY);

foreach (
$cursor as $person) {
    
// ...
}

?>

Zobacz też:

add a note add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top