Jak wiadomo (albo i nie) pojedynczy proces Node.js działa w jednym wątku (pomijając kryjącą się pod spodem pulę wątków do obsługi nieasynchronicznych interfejsów). Świetnie się to sprawdza w przypadku wszelkiego IO, ale nie bardzo sprawdza się w przypadku kosztownych obliczeniowo operacji (główny wątek jest blokowany).
Do tej pory najlepszym rozwiązaniem było wydzielanie zadań na zewnątrz (zwykle z pomocą task queue i workerów), ale często jest to overkill.
Na szczęście z pomocą przychodz nowy open sourcowy projekt M$ - Napa.js -> https://github.com/Microsoft/napajs/blob/master/README.md
Wielowątkowe środowisko uruchomieniowe JSa, oparte (a jakże) na silniku V8, w pełni współpracujące z Node.js (jako moduł), można je tez odpalić bez udziału Noda.
Po wstępnym przejrzeniu i odpaleniu przykładów powiem, że wygląda to dobrze.
Jest szansa, że na stałe trafi do mojego przybornika - brakowało czegoś takiego. W JSie robi się coraz ciekawiej ;)
Jaram się :D
#js #javascript #node #nodejs #napajs #opensource #brawomicrosoft
W JSie robi się coraz ciekawiej, ale niestety ofert na backend jest bardzo mało w Polsce, a szkoda.