Essa é uma pergunta difícil de responder. Se você escreveu um servidor de nó realmente leve para servir apenas arquivos estáticos, provavelmente teria um desempenho melhor do que o nginx, mas não é tão simples. ( Aqui está um "benchmark" comparando um servidor de arquivos nodejs e lighttpd - que é semelhante em desempenho ao ngingx ao servir arquivos estáticos).
O desempenho em relação ao serviço de arquivos estáticos geralmente se resume a mais do que apenas o servidor da Web que faz o trabalho. Se você quiser o melhor desempenho possível, usará um CDN para servir seus arquivos para reduzir a latência para os usuários finais e se beneficiar do cache de borda.
Se você não estiver preocupado com isso, o node pode servir arquivos estáticos muito bem na maioria das situações. O Node se presta a código assíncrono, do qual também depende, uma vez que é de thread único e qualquer E / S de bloqueio pode bloquear todo o processo e degradar o desempenho de seus aplicativos. É mais do que provável que você esteja escrevendo seu código de maneira não bloqueadora, mas se estiver fazendo algo de forma síncrona, poderá causar bloqueio, o que degradaria a rapidez com que outros clientes podem ter seus arquivos estáticos servidos. A solução fácil é não escrever código de bloqueio, mas às vezes isso não é uma possibilidade ou nem sempre é possível aplicá-lo.