JetBrains PHPverse 2026

La clase MongoDB\Driver\ReadPreference

(mongodb >=1.0.0)

Introducción

Sinopsis de la Clase

final class MongoDB\Driver\ReadPreference implements MongoDB\BSON\Serializable, Serializable {
/* Propiedades */
public readonly string $mode;
public readonly ?array $tags;
public readonly int $maxStalenessSeconds;
public readonly ?object $hedge;
/* Constantes */
const string PRIMARY = primary;
const string PRIMARY_PREFERRED = primaryPreferred;
const string SECONDARY = secondary;
const string SECONDARY_PREFERRED = secondaryPreferred;
const string NEAREST = nearest;
const int NO_MAX_STALENESS = -1;
/* Métodos */
final public bsonSerialize(): stdClass
final public __construct(string $mode, ?array $tagSets = null, ?array $options = null)
final public getHedge(): ?object
final public getMaxStalenessSeconds(): int
final public getMode(): int
final public getModeString(): string
final public getTagSets(): array
}

Propiedades

mode
El modo de preferencia de lectura como cadena (por ejemplo "primary", "secondary").
tags
La lista de conjuntos de tags utilizada por la preferencia de lectura, o null si no se especificó ningún conjunto de tags.
maxStalenessSeconds
La duración máxima de obsolescencia en segundos para las lecturas, o MongoDB\Driver\ReadPreference::NO_MAX_STALENESS si no se especificó ninguna duración máxima de obsolescencia.
hedge
Un documento que especifica las opciones de hedge para la preferencia de lectura, o null si no se especificó ninguna opción de hedge.
Advertencia

Esta propiedad está obsoleta ya que las lecturas con hedge están obsoletas en MongoDB 8.0.

Constantes predefinidas

MongoDB\Driver\ReadPreference::PRIMARY

Todas las operaciones se leen desde el primario actual del conjunto de réplicas. Esta es la preferencia de lectura por omisión para MongoDB.

MongoDB\Driver\ReadPreference::PRIMARY_PREFERRED

En la mayoría de las situaciones, las operaciones se leen desde el primario, pero si no está disponible, las operaciones se leen desde los miembros secundarios.

MongoDB\Driver\ReadPreference::SECONDARY

Todas las operaciones se leen desde los miembros secundarios del conjunto de réplicas.

MongoDB\Driver\ReadPreference::SECONDARY_PREFERRED

En la mayoría de los casos, las operaciones se leen desde los miembros secundarios, pero si ningún miembro secundario está disponible, las operaciones se leen desde el primario.

MongoDB\Driver\ReadPreference::NEAREST

Las operaciones se leen desde el miembro del conjunto de réplicas con la menor latencia de red, independientemente del tipo de miembro.

MongoDB\Driver\ReadPreference::NO_MAX_STALENESS

El valor por omisión de la opción "maxStalenessSeconds" es no especificar ningún límite sobre la obsolescencia máxima, lo que significa que el controlador no tendrá en cuenta el desfase de un secundario al elegir dónde dirigir una operación de lectura.

MongoDB\Driver\ReadPreference::SMALLEST_MAX_STALENESS_SECONDS

El valor mínimo de la opción "maxStalenessSeconds" es de 90 segundos. El controlador estima la obsolescencia de los segundos verificando periódicamente la última fecha de escritura de cada miembro del conjunto de réplicas. Como estos controles son poco frecuentes, la estimación de la obsolescencia es aproximada. Por lo tanto, el controlador no puede aplicar un valor de obsolescencia máxima inferior a 90 segundos.

Historial de cambios

Versión Descripción
PECL mongodb 2.3.0 Se añadieron las propiedades públicas readonly.
PECL mongodb 2.0.0

Eliminar las constantes MongoDB\Driver\ReadPreference::RP_PRIMARY, MongoDB\Driver\ReadPreference::RP_PRIMARY_PREFERRED, MongoDB\Driver\ReadPreference::RP_SECONDARY, MongoDB\Driver\ReadPreference::RP_SECONDARY_PREFERRED, y MongoDB\Driver\ReadPreference::RP_NEAREST. El método getMode() también fue eliminado.

PECL mongodb 1.7.0

Añadir las constantes MongoDB\Driver\ReadPreference::PRIMARY, MongoDB\Driver\ReadPreference::PRIMARY_PREFERRED, MongoDB\Driver\ReadPreference::SECONDARY, MongoDB\Driver\ReadPreference::SECONDARY_PREFERRED, MongoDB\Driver\ReadPreference::NEAREST.

Implementa Serializable.

PECL mongodb 1.2.0

Añadir las constantes MongoDB\Driver\ReadPreference::NO_MAX_STALENESS y MongoDB\Driver\ReadPreference::SMALLEST_MAX_STALENESS_SECONDS.

Implementa MongoDB\BSON\Serializable.

Tabla de contenidos

add a note

User Contributed Notes

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