herydj

Worker thread en NodeJS

Exécuter du code JavaScript dans des threads parallèles

02 août 2024
NodeJS

Pour rappel, NodeJS est monothread : un seul fil d'exécution pour gérer toutes les opérations. Cependant, certaines tâches lourdes peuvent bloquer ce fil unique et ralentir l'application. Et c’est ce problème que résolu le Worker Thread. Il permet d'exécuter du code JavaScript dans des threads parallèles, évitant ainsi de bloquer le fil principal.

C’est très utile si une tâche prend plus de temps à s’exécuter, par exemple compresser les images uploader, effectuer des calculs intensifs, …

À la différence de cluster, où on crée plusieurs instances du processus principal, le Worker Thread permet d'exécuter des tâches lourdes en parallèle dans le même processus.

Une explication de cluster : https://www.linkedin.com/feed/update/urn:li:activity:7208173986713681921/

Si vous voulez utiliser worker thread avec typescript : https://gist.github.com/heryfitiavana22/7a4900c049bc1bf5fd4d7c5b4515efab

worker-threadworker-threadworker-thread