Есть ли какие-либо проблемы / недостатки при запуске Mongo в качестве набора реплик из 1 узла, если предположить, что мне действительно не нужна репликация, балансировка нагрузки или другие масштабируемые функции?
У вас нет высокой доступности, обеспечиваемой правильным набором реплик.Таким образом, это не рекомендуется для производственного развертывания.Это нормально для разработки.
Обратите внимание, что функция набора реплик главным образом заключается в высокой доступности, а не в масштабировании.
Каковы различия в функциональности и производительности, если таковые имеются, между работающимикак автономный или как набор реплик с 1 узлом?
Набор реплик с одним узлом будет иметь оплог.Это означает, что вы будете использовать больше дискового пространства для хранения оплога, а также любая операция вставки / обновления будет записана в оплог (усиление записи).
Так почему же автономный режим нерекомендуемые?Не достаточно ли это стабильно или по другим причинам?
MongoDB в рабочей среде был разработан с учетом развертывания набора реплик для:
- Высокая доступность перед лицом узласбои
- Текущее обслуживание / обновление без простоев
- Возможность масштабирования операций чтения
- Возможность иметь реплику данных в узле специального назначения, который не является частьюузлы высокой доступности
Короче говоря, MongoDB была разработана как отказоустойчивая распределенная база данных (масштабируется горизонтально) вместо типичной монолитной базы данных SQL (масштабируется вертикально).Идея состоит в том, что, если вы потеряете один узел вашего набора реплик, другие немедленно вступят во владение.В большинстве случаев ваше приложение даже не знает о сбое на стороне базы данных.Напротив, сбой в монолитном сервере баз данных немедленно нарушит работу вашего приложения.