Travailleurs web

Définition - Que signifie Web Workers?

Web workers est une nouvelle interface de programmation d'application en cours de développement pour HTML5 qui permet aux processus logiciels de s'exécuter dans des threads d'arrière-plan. Les agents Web sont créés sur le client. Ils fonctionnent parallèlement aux processus responsables de l'interface utilisateur (UI) et sont créés de manière inhabituelle par ceux-ci. Une fois créés, les agents Web peuvent communiquer avec leur créateur parent en envoyant des messages aux gestionnaires d'événements spécifiés de l'interface utilisateur définie par le parent.

Les travailleurs Web sont techniquement connus sous le nom d'API des travailleurs Web. La plupart des principaux navigateurs (sauf Internet Explorer 9) prennent en charge cette fonctionnalité.

Definir Tech explique les Web Workers

L'API des nœuds de calcul Web spécifie deux types de nœuds de calcul: le collaborateur dédié et le collaborateur partagé. Le travailleur dévoué est le plus simple; il est conçu pour exécuter et accomplir une sorte de tâche. Un exemple pourrait être une horloge qui est mise à jour sur un écran utilisateur. La tâche dédiée se déclenche en arrière-plan, effectue la mise à jour de l'horloge et se termine.

Un worker partagé est plus compliqué en ce qu'il a la capacité de communiquer en répondant via une fonction de gestionnaire d'événements. Un exemple pourrait être la validation de l'adresse de l'utilisateur et des informations de téléphone sur un écran d'enregistrement. Chaque donnée doit être vérifiée. Lorsque les résultats sont complets, ils sont transmis à la page, afin qu'elle sache que toutes les données de l'utilisateur sont valides et qu'elle puisse continuer le processus d'enregistrement.

Les travailleurs Web sont très prometteurs pour améliorer l'expérience utilisateur des programmes Web. La vitesse à laquelle un écran de navigateur peut être mis à jour est considérablement augmentée car plusieurs processus effectuent désormais la mise à jour.

Cependant, il y a encore des choses à régler. Premièrement, la sécurité des threads et la concurrence d'accès peuvent être un problème. N'oubliez pas qu'il s'agit de processus côté client qui utilisent en fait des serveurs Web principaux pour appeler des threads au niveau du système d'exploitation sur le client. Par définition, il n'y a pas beaucoup de standardisation ici.

Deuxièmement, un travailleur Web reçoit un identificateur de recours uniforme (URI) du script à exécuter lors de sa création. Ces URI doivent passer la politique de même origine qui a été développée en réponse aux problèmes de sécurité côté client, bien qu'il y ait actuellement un certain désaccord entre les fournisseurs de navigateurs quant à savoir si ces URI doivent passer ce même test de détection.

Enfin, les paquets d'informations renvoyés pour les travailleurs Web partagés doivent être sérialisés, ce qui peut être un processus lent. À un moment donné, l'efficacité de l'utilisation d'un travailleur Web doit être compensée par le temps de traitement de la sérialisation.