Si entiendo correctamente, el nodo JS no está bloqueando ... así que en lugar de esperar una respuesta de una base de datos u otro proceso, pasó a otra cosa y vuelve a comprobarlo más tarde.
También es de un solo hilo.
Entonces, todo esto significa que un proceso de Nodo JS determinado puede utilizar de manera completa y eficiente un solo núcleo de CPU, pero no utilizará ningún otro núcleo en la máquina, ya que nunca usará más de uno a la vez.
Esto, por supuesto, significa que las otras CPU aún pueden ser utilizadas por otros procesos para cosas como la base de datos SQL u otras subrutinas pesadas de CPU intencionalmente separadas siempre que sean un proceso separado.
También en el caso de que el proceso Node JS tenga un bucle sin fin o una función de ejecución prolongada, ese proceso ya no es útil de ninguna manera hasta que se detenga el bucle sin fin o la función de ejecución prolongada (o se cancele todo el proceso).
¿Todo esto está bien? ¿Estoy correcto en mi entendimiento?