А так, если подумать, что мы экономим на асинхронном решении? Не именно об этом node.js, а любом.
Ну, вероятно, память. Раньше у нас было несколько десятков воркеров PHP, которые только и делали, что спали в отжидании ответа базы, по-этому то их и несколько десятков без проблем. Сейчас у нас несколько воркеров асинхронных, которые не спят вообще, по-этому сильно больше, чем число ядер в системе, их не запустишь. Однако, данные каждого запроса тоже нужно хранить где-то, так что экономия памяти есть, но меньше, чем можно было бы ожидать.
Каково в данном случае процессору я не знаю - не настолько хорошо знаю шедулер. Но интуитивно чувствую, что разницы особой нет.
Какие еще плюсы?
Поехали минусы. Ну, помнить о числах фибоначи, да. Т.е. сложная математика не катит. Поведение менее стабильное в целом - какие-то баги и краши застопорят или прибъют нафиг не один запрос, а сразу приличную пачку - т.е. все, что висят на этом воркере. Диск, кстати, приносит так же много неприятностей в плане асинхронности - те, кто раздают много всего с диска nginx-ом, думаю, знают, зачем приходится ставить кучу воркеров.