Назад | Перейти на главную страницу

Оптимизация базы данных mongodb

На данный момент у меня есть база данных mongo с тремя экземплярами, одним главным и двумя подчиненными.

На данный момент база данных находится на кубернетах, размещенных на aws. Максимальное количество ядер процессора - 4, и время от времени, когда я выполняю тяжелую обработку, процессор, используемый для mongo, составляет 100% (4 ядра).

Сначала у меня проблема с кубернетами для управления внешним подключением с использованием набора реплик, потому что, когда вы выполняете подключение к набору реплик, ответ сервера - это внутренние конечные точки кубернетов, поэтому внешний клиент не может подключиться, я должен всегда подключаться к мастеру из снаружи, если я работаю вне кластера. На данный момент это не проблема, так как у меня нет подключенного внешнего приложения, только инструменты отладки, но это может быть позже.

Тогда я не знаю, является ли размещение mongodb на kubernetes хорошим решением или лучше сделать это внешним, я не могу найти на нем никаких лучших практик.

Я действительно не понимаю, почему, когда я выполняю тяжелый процесс на mongo, только процессор мастера становится сумасшедшим, а другой не перемещается, мой URL-адрес подключения mongodb://username:password@host1,host2,host3/database?replicaSet=rs0&slaveOk=true Но у меня такое впечатление, что работает только мастер, когда бегу rs.status() вроде все нормально.