Класс MongoDB\Driver\ReadPreference

(mongodb >=1.0.0)

Введение

Обзор класса

final class MongoDB\Driver\ReadPreference implements MongoDB\BSON\Serializable, Serializable {
/* Свойства */
public readonly string $mode;
public readonly ?array $tags;
public readonly int $maxStalenessSeconds;
public readonly ?object $hedge;
/* Константы */
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;
/* Методы */
final public function bsonSerialize(): stdClass
final public function __construct(string $mode, ?array $tagSets = null, ?array $options = null)
final public function getHedge(): ?object
final public function getMaxStalenessSeconds(): int
final public function getMode(): int
final public function getModeString(): string
final public function getTagSets(): array
}

Свойства

mode
Режим read preference в виде строки (например, "primary", "secondary").
tags
Список наборов тегов, который использует read preference, или null, если наборы тегов не указаны.
maxStalenessSeconds
Максимальное отставание (staleness) в секундах для операций чтения или MongoDB\Driver\ReadPreference::NO_MAX_STALENESS, если максимальное отставание не указано.
hedge
Документ, который задаёт параметры hedge для read preference, или null, если параметры hedge не указаны.
Внимание

Свойство устарело, поскольку hedged reads устарели в MongoDB 8.0.

Предопределённые константы

MongoDB\Driver\ReadPreference::PRIMARY

Каждую операцию чтения из текущей реплики установили первичными. Это предпочтение чтения по умолчанию для СУБД MongoDB.

MongoDB\Driver\ReadPreference::PRIMARY_PREFERRED

В большей части случаев операции считываются из первичного узла, но если узел недоступен, операции считываются со вторичных узлов.

MongoDB\Driver\ReadPreference::SECONDARY

Каждая операция считывается из вторичных узлов набора реплик.

MongoDB\Driver\ReadPreference::SECONDARY_PREFERRED

В большей части случаев операции считываются из вторичных узлов, но если узлы недоступны, операции считываются с первичного.

MongoDB\Driver\ReadPreference::NEAREST

Операции считываются из узла набора реплик с наименьшей задержкой в сети, независимо от типа.

MongoDB\Driver\ReadPreference::NO_MAX_STALENESS

Значение по умолчанию для параметра "maxStalenessSeconds" чтобы указать на ограничение на максимальное запаздывание (staleness), что означает, что драйвер не будет учитывать задержку вторичных узлов при выборе направления для операции чтения.

MongoDB\Driver\ReadPreference::SMALLEST_MAX_STALENESS_SECONDS

Минимальное значение для параметра "maxStalenessSeconds" равно 90 секундам. Драйвер оценивает запаздывание (staleness) вторичных узлов, периодически проверяя последнюю дату записи каждого члена набора реплик. Поскольку эти проверки нечастые, оценка запаздывания грубая. Поэтому драйвер не обеспечивает максимальную величину запаздывания меньше 90 секунд.

Список изменений

Версия Описание
PECL-модуль mongodb 2.3.0

Добавлены свойства public readonly.

PECL-модуль mongodb 2.0.0

Удалили константы MongoDB\Driver\ReadPreference::RP_PRIMARY, MongoDB\Driver\ReadPreference::RP_PRIMARY_PREFERRED, MongoDB\Driver\ReadPreference::RP_SECONDARY, MongoDB\Driver\ReadPreference::RP_SECONDARY_PREFERRED и MongoDB\Driver\ReadPreference::RP_NEAREST. Метод getMode() тоже удалили.

PECL-модуль mongodb 1.20.0

Константы MongoDB\Driver\ReadPreference::RP_PRIMARY, MongoDB\Driver\ReadPreference::RP_PRIMARY_PREFERRED, MongoDB\Driver\ReadPreference::RP_SECONDARY, MongoDB\Driver\ReadPreference::RP_SECONDARY_PREFERRED и MongoDB\Driver\ReadPreference::RP_NEAREST устарели.

PECL-модуль mongodb 1.7.0

Добавили константы MongoDB\Driver\ReadPreference::PRIMARY, MongoDB\Driver\ReadPreference::PRIMARY_PREFERRED, MongoDB\Driver\ReadPreference::SECONDARY, MongoDB\Driver\ReadPreference::SECONDARY_PREFERRED и MongoDB\Driver\ReadPreference::NEAREST.

Класс теперь реализует интерфейс Serializable.

PECL-модуль mongodb 1.2.0

Добавили константы MongoDB\Driver\ReadPreference::NO_MAX_STALENESS и MongoDB\Driver\ReadPreference::SMALLEST_MAX_STALENESS_SECONDS.

Класс теперь реализует интерфейс MongoDB\BSON\Serializable.

Содержание

Добавить

Примечания пользователей

Пользователи ещё не добавляли примечания для страницы
To Top