Se capisco correttamente il nodo JS non sta bloccando ... quindi invece di attendere una risposta da un database o da un altro processo è passato a qualcos'altro e ricontrolla più tardi.
Inoltre è a thread singolo.
Quindi tutto ciò significa che un determinato processo Node JS può utilizzare in modo completo ed efficiente un singolo core della CPU ma non utilizzerà nessun altro core sulla macchina, in quanto non ne utilizzerà mai più uno alla volta.
Questo ovviamente significa che le altre CPU possono ancora essere utilizzate da altri processi per cose come database SQL o altre subroutine di CPU volutamente separate fintanto che si tratta di un processo separato.
Anche nel caso in cui il processo Node JS abbia un ciclo infinito o una funzione di lunga durata, quel processo non è più utile in alcun modo fino a quando il ciclo infinito o la funzione di lunga durata viene interrotto (o l'intero processo viene interrotto).
Va tutto bene? Sono corretto nella mia comprensione?