PHP Conference Nagoya 2025

Класс MongoDB\Driver\ReadPreference

(mongodb >=1.0.0)

Введение

Обзор класса

final class MongoDB\Driver\ReadPreference implements MongoDB\BSON\Serializable, Serializable {
/* Константы */
const int RP_PRIMARY = 1;
const int RP_SECONDARY = 2;
const int RP_NEAREST = 10;
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 bsonSerialize(): stdClass
final public __construct(string|int $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
final public serialize(): string
final public unserialize(string $data): void
}

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

MongoDB\Driver\ReadPreference::RP_PRIMARY

Все операции считываются из текущего первичного узла набора реплик. Это предпочтение чтения по умолчанию для MongoDB.

Внимание

Константа УСТАРЕЛА с версии модуля 1.20.0, а в версии 2.0 константу удалят. Вместо этой константы в приложениях лучше указывать константу MongoDB\Driver\ReadPreference::PRIMARY.

MongoDB\Driver\ReadPreference::RP_PRIMARY_PREFERRED

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

Внимание

Константа УСТАРЕЛА с версии модуля 1.20.0, а в версии 2.0 константу удалят. Вместо этой константы в приложениях лучше указывать константу MongoDB\Driver\ReadPreference::PRIMARY_PREFERRED.

MongoDB\Driver\ReadPreference::RP_SECONDARY

Все операции считываются из вторичных членов набора реплик.

Внимание

Константа УСТАРЕЛА с версии модуля 1.20.0, а в версии 2.0 константу удалят. Вместо этой константы в приложениях лучше указывать константу MongoDB\Driver\ReadPreference::SECONDARY.

MongoDB\Driver\ReadPreference::RP_SECONDARY_PREFERRED

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

Внимание

Константа УСТАРЕЛА с версии модуля 1.20.0, а в версии 2.0 константу удалят. Вместо этой константы в приложениях лучше указывать константу MongoDB\Driver\ReadPreference::SECONDARY_PREFERRED.

MongoDB\Driver\ReadPreference::RP_NEAREST

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

Внимание

Константа УСТАРЕЛА с версии модуля 1.20.0, а в версии 2.0 константу удалят. Вместо этой константы в приложениях лучше указывать константу MongoDB\Driver\ReadPreference::NEAREST.

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 секунд.

Содержание

Добавить

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

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