Я пытаюсь запустить несколько запросов mongodb через узел Async. Но они все еще требуют времени для запуска. База данных индексируется и полностью оптимизирована. Есть ли способ, с помощью которого я могу увеличить время выполнения запроса с помощью администратора mongodb ... или увеличить его производительность, выделив ему больше памяти.Mongodb параллельные запросы через nodejs
Запросы запускаются один за другим, когда я вижу на консоли. и некоторые из них слишком долго ... в результате чего нет ответа ..
2015-12-29T10:31:48.958-0800 I COMMAND [conn63] command consumers.$cmd command: count { count: "consumer1s", query: { ZIP: 37089, $or: [ { ADULTS_F_18_24: "Y" }, { ADULTS_F_24_35: "Y" } ] } } planSummary: IXSCAN { ZIP: 1.0, GENDER: 1.0 } keyUpdates:0 writeConflicts:0 numYields:1 reslen:44 locks:{ Global: { acquireCount: { r: 4 } }, MMAPV1Journal: { acquireCount: { r: 4 } }, Database: { acquireCount: { r: 2 } }, Collection: { acquireCount: { R: 2 }, acquireWaitCount: { R: 2 }, timeAcquiringMicros: { R: 54270 } } } 146ms
2015-12-29T10:31:54.925-0800 I COMMAND [conn62] command consumers.$cmd command: count { count: "consumer1s", query: { ZIP: 37024, $or: [ { ADULTS_F_18_24: "Y" }, { ADULTS_F_24_35: "Y" } ] } } planSummary: IXSCAN { ZIP: 1.0, GENDER: 1.0 } keyUpdates:0 writeConflicts:0 numYields:88 reslen:44 locks:{ Global: { acquireCount: { r: 178 } }, MMAPV1Journal: { acquireCount: { r: 172 } }, Database: { acquireCount: { r: 89 } }, Collection: { acquireCount: { R: 89 }, acquireWaitCount: { R: 83 }, timeAcquiringMicros: { R: 1654781 } } } 6114ms
Привета смотрите журналы, чтобы понять мой вопрос ... 2 запросов следующих же план .. большую разница во время выполнения ... Пожалуйста, расскажите мне причину и как ее исправить.
Следующие данные должны быть удобными. Я работаю над этим приложением в системе Macintosh. OSX Yosemite 10.10.2 Процессор 3,2 ГГц Intel Core i5. Память составляет 8 ГБ 1600 МГц DDR3. Любые предложения, как я могу выделить больше виртуальной памяти для mongodb
Вам необходимо посмотреть ваши журналы и контролировать использование ресурсов во время запросов. Существует нет серебряного буллита для повышения эффективности запросов – Martin
индексов ... –
Это зависит от вашей реальной среды. Это высокий параллелизм или большие данные? Например, если это высокий уровень параллелизма, вам лучше использовать 'redis' или' memcached' или другие решения. Хотя, я также ищу оптимизацию mongodb ... – hirra