Maciej Cąderek
2017-10-20 18:20

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

Napa.js

Desu

Mogli to zanazwac nap.js :P

Maciej Cąderek

@Laran Fakt, ale dobrych kandydatów chyba jeszcze mniej ;)