próbáltam már egyszer válaszolni, de nem biztos, hogy értem a kérdésedet:
Ha az adott nodejs alkalmazás úgy van megírva, hogy képes a beépített clustering mechanizmust használva skálázódni (vagy pl. pm2-t ajánl/használ erre) akkor biztosan meg kellett adnia a fejlesztőnek valahol a kívánt subprocessek számát. Ezt vagy kivezette neked egy konfigurációs beállításba (és akkor te beállítod az igényeidnek megfelelően) vagy pedig valamilyen logika alapján maga dönti el (pl. lekérdezi az elérhető magok számát és használja az összeset). Az utóbbi esetben ha korlátozni akarod az alkalmazás CPU használatát, akkor alacsonyabb szinten kell lehatárolnod előle a többi magot (pl. dockert használsz CPU paraméterrel, vagy virtuális gépet használsz), de azt, hogy az adott helyzetben melyik a jobb, neked kell eldönteni.
Még két dolog:
- a pm2-nél ezt biztosan lehet állítani, iilletve futásidőben is matathatod, ha jól van megírva az alkalmazás akkor mindegy neki, hogy 1-2-8-16 process indul/fut/hal meg éppen
- az, hogy egy alkalmazás nem root userrel futtatva is tudjon 1024 alatti porton figyelni nem valami mágia, egyszerűen be kell neki állítani a CAP_NET_BIND_SERVICE capability-t:
setcap 'cap_net_bind_service=+ep' /path/to/program
ez mindenre működik. Az, hogy mennyire kockázatos security szempontból, szintén adott környezet kérdése.