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

MongoDB высокая загрузка ЦП

Запуск MongoDB 2.4.11 в Ubuntu 14.04.1 LTS

Вверху, этот поток mongod постоянно использует ~ 195% ЦП:

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND
24524 mongodb   20   0 4676092 767556 719184 S 194.9 37.4 221:15.16 mongod

Когда я настраиваю PID, я получаю бесконечное количество:

select(11, [9 10], NULL, NULL, {0, 10000}) = 0 (Timeout)

Что я считаю проблемой с тайм-аутом Mongo? Но я не совсем уверен, так как я новичок в решении проблем с сервером.

Конфигурация MongoDB: http://pastebin.com/sheb1hTG

Хвост из журнала Mongo: http://pastebin.com/V5apSsq5

Пример из монгостата: http://pastebin.com/VRQzqn3D

У меня есть 7 серверов Node.js, подключенных к Mongo, работающих на этом Ubuntu - я знаю, что это чрезмерно, но только 2 сервера вызывают проблему с перегрузкой ЦП - когда я выключаю их оба, процент ЦП возвращается в норму.

Я не уверен, что нужно искать в том, как реализованы эти серверы Node и как это может вызывать проблемы с Mongo.

У меня была аналогичная проблема с чистой установкой MongoDB на RHEL 6.3 с использованием прилагаемых репозиториев.

mongodb-org.x86_64                               3.2.0-1.el6

после установки служба запустилась без ошибок, но загрузка ЦП была выше 100%. Я также заметил чрезвычайно высокий soft irq и миллионы переключений контекста. В моем случае с виртуальной машиной что-то не так, и после перезагрузки проблема была решена. Кажется, что вывод strace выше "нормален" для MongoDB - какой-то опрос он использует?