# La classe MongoDB\Driver\ReadPreference

(mongodb >=1.0.0)

## Introduction

## Synopsis de la classe

final MongoDB\Driver\ReadPreference implements MongoDB\BSON\Serializable {
/* Constantes */
const integer RP_PRIMARY = 1 ;
const integer RP_PRIMARY_PREFERRED = 5 ;
const integer RP_SECONDARY = 2 ;
const integer RP_SECONDARY_PREFERRED = 6 ;
const integer RP_NEAREST = 10 ;
const integer NO_MAX_STALENESS = -1 ;
const integer SMALLEST_MAX_STALENESS_SECONDS = 90 ;
/* Méthodes */
final public bsonSerialize ( void ) : object
final public __construct ( string|integer `$mode` [, array `$tagSets` = `NULL` [, array `$options` = array() ]] )
final public getMaxStalenessSeconds ( void ) : int
final public getMode ( void ) : int
final public getTagSets ( void ) : array
}

## Constantes pré-définies

`MongoDB\Driver\ReadPreference::RP_PRIMARY`

  Toutes les opérations lues à partir du jeu de réplicas actuel Primary. Il s'agit de la préférence de lecture par défaut pour MongoDB.

`MongoDB\Driver\ReadPreference::RP_PRIMARY_PREFERRED`

  Dans la plupart des situations, les opérations sont lues à partir du primaire, mais s'il n'est pas disponible, les opérations sont lues à partir de membres secondaires.

`MongoDB\Driver\ReadPreference::RP_SECONDARY`

  Toutes les opérations sont lues à partir des membres secondaires du jeu de réplicas.

`MongoDB\Driver\ReadPreference::RP_SECONDARY_PREFERRED`

  Dans la plupart des cas, les opérations sont lues par des membres secondaires, mais si aucun membre secondaire n'est disponible, les opérations sont lues à partir du primaire.

`MongoDB\Driver\ReadPreference::RP_NEAREST`

  Les opérations sont lues à partir du membre du jeu de réplicas avec la latence de réseau la moins élevée, quel que soit le type du membre.

`MongoDB\Driver\ReadPreference::NO_MAX_STALENESS`

  La valeur par défaut de l'option "maxStalenessSeconds" est de ne spécifier aucune limite sur l'obsolescence maximale, ce qui signifie que le pilote ne prendra pas en compte le décalage d'un secondaire lors du choix de l'endroit où diriger une opération de lecture.

`MongoDB\Driver\ReadPreference::SMALLEST_MAX_STALENESS_SECONDS`

  La valeur minimale de l'option "maxStalenessSeconds" est de 90 secondes. Le pilote estime l'obsolescence des secondes en vérifiant périodiquement la dernière date d'écriture de chaque membre du jeu de réplicas. Comme ces contrôles sont peu fréquents, l'estimation de l'obsolescence est grossière. Ainsi, le pilote ne peut pas appliquer une valeur d'obsolescence maximale inférieure à 90 secondes.

## Historique

Version | Description
--- | ---
1.2.0 | Ajout des constantes `MongoDB\Driver\ReadPreference::NO_MAX_STALENESS` et `MongoDB\Driver\ReadPreference::SMALLEST_MAX_STALENESS_SECONDS`. Implémente MongoDB\BSON\Serializable.

## Sommaire

- MongoDB\Driver\ReadPreference::bsonSerialize — Returns an object for BSON serialization
- MongoDB\Driver\ReadPreference::__construct — Créer un nouveau ReadPreference
- MongoDB\Driver\ReadPreference::getMaxStalenessSeconds — Returns the ReadPreference's "maxStalenessSeconds" option
- MongoDB\Driver\ReadPreference::getMode — Returns the ReadPreference's "mode" option
- MongoDB\Driver\ReadPreference::getTagSets — Returns the ReadPreference's "tagSets" option