31 points par xguru 2022-02-07 | 1 commentaires | Partager sur WhatsApp
  • Présentation de WebAssembly (WASM), de ses usages actuels et des domaines où il pourrait être utilisé à l’avenir

Caractéristiques de WASM

  • Portable : s’exécute aussi bien dans le navigateur que sur le serveur grâce à un bytecode standardisé

  • Universel : de nombreux langages comme C, Rust, Go, Python ou Ruby peuvent être compilés en Wasm

  • Performances proches du natif : en moyenne 1,45 à 1,55 fois plus lent que le natif, mais toujours plus rapide que JavaScript

  • Démarrage rapide : 10 à 100x plus rapide qu’un conteneur Docker, et dans le navigateur aussi plus rapide que le parsing/l’interprétation de JavaScript

  • Sûr : conçu avec le web en tête, donc sécurisé via le sandboxing mémoire et des limitations de capacités

Domaines où WASM est utile

  • Amélioration des performances de JavaScript

  • Interopérabilité entre langages de programmation

  • Runtime pour des systèmes de plugins multilingues

  • Moteur de sandboxing embarqué pour importer et utiliser en toute sécurité diverses bibliothèques tierces

  • L’avenir de la containerization : plus rapide que Docker, avec une empreinte plus légère et plus de sécurité

  • Plateformes FaaS / serverless

  • Blockchain : peut servir de runtime haute performance pour exécuter des smart contracts

Prévisions et opportunités

  • Nouvelles architectures applicatives

→ possibilité de découper les microservices en composants encore plus petits

  • Brownfield deployment

→ intégration de conteneurs Docker et Wasm au niveau de la couche d’orchestration

  • Framework serverless/edge standardisé

→ aujourd’hui, Fastly, Lambda et Fission construisent chacun leur propre plateforme, mais une standardisation reste possible

→ "Terraform of Serverless"

  • Gestion des paquets

→ tous les langages disposent d’un écosystème de paquets

→ WASM a besoin d’un gestionnaire de paquets. WAPM existe, mais est presque à l’abandon

Conclusion

  • Si WebAssembly est si intéressant, pourquoi n’est-il pas plus largement utilisé ?

→ son marketing n’est pas bon. Comme il ne se limite ni au web ni à l’assembly, le nom est mal choisi dès le départ

→ le marketing a surtout visé les développeurs web, alors que son potentiel réel dépasse le navigateur

→ le standard WebAssembly n’est pas encore en place

→ l’interopérabilité entre langages est encore très mauvaise

→ l’expérience développeur manque encore largement de maturité

  • Mais beaucoup d’aspects sont en cours d’amélioration et devraient atteindre un niveau acceptable d’ici 1 à 2 ans

  • L’activité autour de WebAssembly, ainsi que son écosystème et sa communauté, entrent dans une phase d’explosion

1 commentaires

 
xguru 2022-02-07

Même en cherchant WebAssembly/WASM sur GeekNews, vous verrez un très grand nombre d’articles.

Voici une liste des principaux articles.

→ Une organisation à but non lucratif créée avec pour objectif d’utiliser WebAssembly au-delà du navigateur