2016-11-21 3 views
2

У меня есть осколочный и реплицированный MongoDB-кластер, и мне было интересно, когда я использую $currentDate, и MongoDB синхронизирует текущее время между серверами, или я могу испытать суточные дрейфы часов?

ответ

1

Синхронизация системных часов, безусловно, выходит за рамки ответственности сервера MongoDB.

$currentDate будет отображать текущее время с точки зрения сервера, когда документ обновлен, поэтому дрифт часов в осколочном кластере будет иметь значение $currentDate, если есть значительные различия между осколками.

Если вы используете развертывание нескольких серверов, вы всегда должны использовать службу синхронизации часов (например, NTP), чтобы избежать потенциального дрейфа часов. Обычно сервисы, которые делают небольшие инкрементные корректировки времени (например, ntpd), предпочтительны для утилит, которые делают большие корректировки (например, ntpdate).

Для получения дополнительной информации о потенциальных результатах перекоса часов с MongoDB см .: MongoDB and Leap Seconds.

Смежные вопросы