Считать arbiter репликой данных
Симптом: Ожидают, что с него можно читать документы.
Исправление: Arbiter не хранит набор данных.
Репликация в MongoDB — способ повысить надёжность и отказоустойчивость базы данных.
Простая идея: есть несколько копий данных, которые автоматически поддерживаются в синхронизации.
Цели репликации: отказоустойчивость и повышение производительности чтения.
Replica set — группа экземпляров mongod с одним набором данных.
Primary принимает записи, secondary хранят копии и могут помогать с чтением.
Синхронная репликация даёт более актуальные копии, но добавляет задержку.
Асинхронная репликация быстрее для записи, но secondary могут отставать.
Arbiter не хранит данные и участвует в выборах primary при сбое.
Симптом: Ожидают, что с него можно читать документы.
Исправление: Arbiter не хранит набор данных.
Симптом: Запись отправляется на secondary без понимания настроек.
Исправление: Запись обычно идёт в primary.
Симптом: После записи чтение с secondary возвращает старое значение.
Исправление: Учитывайте задержку асинхронной репликации.
Симптом: Система становится медленной на расстоянии.
Исправление: Сравнивайте требования к актуальности и задержке.
Симптом: При сбое primary ожидают ручного переключения всегда.
Исправление: Replica set может выбрать новый primary автоматически.
Симптом: Чтение с secondary нарушает ожидания пользователя.
Исправление: Проверьте требования к свежести данных.