Проблема с производительностью до mongodump
Для нашего клиента мы работаем с сервером, на котором запущены один экземпляр mongo, gradle, postgres и nginx. Проблема в том, что у нас были проблемы с производительностью, пока mongodump не запустился. Очередь Монго растет, и данные не запрашиваются. Следующая проблема заключается в том, что клиент не хочет вкладывать средства в набор реплик или обновление программного обеспечения (mongod 3.x).
Кто-нибудь есть идеи, как я мог бы улучшить производительность.
Команда для создания дампа:
mongodump -u ${MONGO_USER} -p ${MONGO_PASSWORD} -o ${MONGO_DUMP_DIR} -d ${MONGO_DATABASE} --authenticationDatabase ${MONGO_DATABASE} > /backup/logs/mongobackup.log
tar cjf ${ZIPPED_FILENAME} ${MONGO_DUMP_DIR}
Система: 6 ядер, 36 ГБ, ОЗУ, 1 ТБ, жесткий диск SATA + 2 ТБ (резервный NAS)
MongoDB 2.6.7
Спасибо
С наилучшими пожеланиями, Маркус
2 ответа
Поскольку у вас большая нагрузка, добавление набора реплик является хорошим решением, поскольку резервное копирование может выполняться на вторичном узле, но имейте в виду, что для реплики требуется как минимум три сервера (у вас может быть главный / подчиненный / арбитр - там, где последнему нужен небольшое количество ресурсов)
MongoDump выполняет общую блокировку запроса, которая будет иметь значение, если в дамп-базе данных много записей.
Подсказка: попробуйте сделать резервную копию при небольшой нагрузке на систему.
Попробуйте с объемными снимками. Узнайте у своего поставщика облачных услуг, какие есть варианты для создания снимков. Это супер быстро и дешевле, если сравнивать фактические цены, используемые при создании резервной копии (используется ОЗУ и ЦП, а если жесткий диск, то транзакции постоянны (даже если они невелики)).