У меня есть приложение nodejs, которое получает данные с одного сервера и толкает в другое. Для тестирования я отправил 1000 запросов на мой сервер узлов и увидел, что происходит на системном мониторе. Там я видел, что все 4 процессора заняли 100%.Узел, использующий все процессоры без кластеризации. Как так?
Теперь, из того, что я прочитал на nodejs, кажется, что он по умолчанию использует только 1 поток (что означает 1 процессор?). Но почему все процессоры моего компьютера были заняты? Является ли это балансировкой нагрузки на уровне ОС (я нахожусь на ubuntu 14)
И в случае, если балансировка была выполнена ОС, то в чем разница между этой автоматической балансировкой нагрузки на уровне ОС и явным использованием кластеров для разделения нагрузки? Каковы преимущества/недостатки каждого?
Любая помощь будет высоко оценил :)
¿Как именно ваша установка ?, Хотя узел использует только 1 поток, некоторые модули, которые вы можете использовать может использовать несколько потоков. Если у вас есть сервер nginx или apache, он может автоматически использовать поток для каждого запроса. Я сомневаюсь, что это имеет какое-либо отношение к ОС – angrykoala
Нет nginx или любого другого сервера .... Я использую простое приложение узла с экспресс-прослушиванием на порте 8000. Я использую следующие модули: Q, момент, выражение, запрос и log4js. – harsh