На це каверзне запитання відповісти. Якби ви написали справді полегшений сервер вузлів, щоб просто обслуговувати статичні файли, він, швидше за все, працював би краще, ніж nginx, але це не так просто. ( Ось "еталон" порівнює файловий сервер nodejs та lighttpd - який за продуктивністю схожий на ngingx при обслуговуванні статичних файлів).
Ефективність щодо обслуговування статичних файлів часто зводиться не тільки до веб-сервера, який виконує роботу. Якщо ви хочете отримати максимально високу продуктивність, ви будете використовувати CDN для обслуговування своїх файлів, щоб зменшити затримку для кінцевих користувачів і отримати вигоду від кешування краю.
Якщо вас це не турбує, у більшості ситуацій вузол може добре обслуговувати статичні файли. Вузол піддається асинхронному коду, на який він також покладається, оскільки є однопотоковим, і будь-який блокувальний ввід / вивід може блокувати весь процес і погіршити продуктивність ваших додатків. Більш ймовірно, що ви пишете свій код неблокуючи, але якщо ви робите щось синхронно, це може спричинити блокування, що погіршить швидкість отримання іншими статичними файлами інших клієнтів. Найпростішим рішенням є не писати код блокування, але іноді це неможливо, або ви не завжди можете його застосувати.