IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)

Vous �tes nouveau sur Developpez.com ? Cr�ez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et �tre connect� pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Cr�ez-en un en quelques instants, c'est enti�rement gratuit !

Si vous disposez d�j� d'un compte et qu'il est bien activ�, connectez-vous � l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oubli� ?
Cr�er un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Les conteneurs JavaScript surpasseront-ils les conteneurs Linux ?
Le cr�ateur de Node.js pense que les conteneurs JavaScript pourraient simplifier l'�criture des services Web

Le , par Bill Fassinou

170PARTAGES

12  0 
Les conteneurs JavaScript surpasseront-ils les conteneurs Linux ?
Le cr�ateur de Node.js pense que les conteneurs JavaScript pourraient simplifier l'�criture des services Web

Ryan Dahl, cr�ateur de Node.js et de Deno (comme 'Node', mais � l'envers), a d�clar� r�cemment qu'il pensait que la majorit� des services Web pourraient �tre simplifi�s en utilisant des conteneurs JavaScript, plut�t que des conteneurs Linux. Pr�cis�ment, les d�veloppeurs de Deno, le nouvel environnement d'ex�cution pour JavaScript et TypeScript, explorent la possibilit� d'utiliser des conteneurs JavaScript comme une alternative de plus haut niveau aux conteneurs Linux. Dahl estime que le concept est prometteur, mais certains craignent que cela n'introduise d'autres probl�mes de s�curit� dans l'infrastructure des conteneurs.

Dans un billet de blogue publi� d�but mai, Ryan Dahl, qui a dirig� le d�veloppement des moteurs d'ex�cution JavaScript Deno (2018) et Node.js (2009), a expliqu� pourquoi il pensait que les conteneurs JavaScript pourraient �tre une meilleure alternative aux conteneurs Linux. En effet, la majorit� des programmes de serveur sont des programmes Linux. Ils consistent en un syst�me de fichiers, quelques fichiers ex�cutables, peut-�tre quelques biblioth�ques partag�es, qui s'interfacent avec des logiciels syst�me comme systemd ou nsswitch. Pour Dahl, l'utilisation des conteneurs Linux a surtout �t� popularis�e par Docker.

Docker propose une virtualisation au niveau du syst�me d'exploitation qui fournit un merveilleux m�canisme de distribution des logiciels de serveur. Chaque image de conteneur est un paquetage logiciel pr�t � �tre ex�cut� et sans d�pendance. Selon Dahl, �tant donn� que les logiciels de serveur d�pendent souvent de nombreuses ressources et configurations syst�me, leur d�ploiement �tait difficile par le pass�. Les conteneurs Linux ont alors r�solu ce probl�me. Cependant, Dahl estime qu'un environnement herm�tique similaire peut �tre trouv� dans le JavaScript du navigateur, bien qu'� un niveau d'abstraction plus �lev�.



� Plus nous pouvons supprimer les abstractions inutiles, plus nous pouvons nous rapprocher du concept de "Le r�seau est l'ordinateur". Deno Deploy est une nouvelle impl�mentation de cette id�e (sur le r�seau GCP) �, a-t-il expliqu�. Dans son billet de blogue, Dahl a qualifi� JavaScript de "langage de script universel" et a �mis des hypoth�ses sur l'�volution des conteneurs JavaScript au cours des deux prochaines ann�es. Pour lui, les langages de script sont tr�s utiles pour r�soudre de nombreux probl�mes c�t� serveur. La majorit� du code �crit n'est pas li� au calcul, mais plut�t � la productivit�.

C'est-�-dire la vitesse � laquelle il peut �tre �crit et le co�t mon�taire des d�veloppeurs. � Les langages de script permettent d'�crire la logique m�tier plus rapidement et � moindre co�t. Les langages de script (Python, Ruby, Lua, Shell, Perl, Smalltalk, JavaScript) sont assez similaires. Il existe des diff�rences dans la syntaxe et les API, mais il n'y a pas grand-chose d'autre � leur opposer. Quiconque a pass� du temps en Rust ou en C comprend ce que ressentent les langages de script. En r�sum�, les langages de script sont utiles, mais ils se ressemblent tous, et JavaScript est de loin le plus utilis� et le plus �volutif �, a d�clar� Dahl.

� Il est donc logique de consid�rer JavaScript comme le langage de script universel �, a-t-il ajout�. Selon le cr�ateur de Node.js, le conteneur JavaScript n'est pas destin� � traiter la m�me ampleur de probl�mes que les conteneurs Linux. Son �mergence est le r�sultat de sa simplicit�. Dahl estime qu'il r�duit au minimum le texte passe-partout de la logique commerciale des services Web. Il partage des concepts avec le navigateur et r�duit les concepts que le programmeur doit conna�tre. (Exemple : lors de l'�criture d'un service Web, il est tr�s probable que toute configuration systemd ne soit qu'un code passe-partout inutile.)

� Chaque ing�nieur Web conna�t d�j� les API du navigateur JavaScript. Comme l'abstraction du conteneur JavaScript est construite sur les m�mes API de navigateur, la quantit� totale d'exp�rience dont l'ing�nieur a besoin est r�duite. L'universalit� de JavaScript r�duit la complexit�. Shell est le langage de script interpr�t� utilis� pour invoquer des programmes Unix. Il peut faire des conditionnels, des boucles, il a des variables, mais il est malheureusement limit� et difficile � programmer. La vraie fonctionnalit� est rel�gu�e aux ex�cutables �, a d�clar� Dahl. Dans cette nouvelle couche d'abstraction de serveur, JavaScript prend la place de Shell.

� Il est bien mieux adapt� � la cr�ation de scripts que Bash ou Zsh. Au lieu d'invoquer des ex�cutables Linux, comme le fait Shell, le bac � sable de JavaScript peut invoquer Wasm. Si vous devez effectuer des calculs lourds, comme le redimensionnement d'une image, il est probablement plus judicieux d'utiliser Wasm plut�t que de l'�crire en JavaScript. Tout comme vous n'�crirez pas de code de redimensionnement d'image dans Bash, vous ferez appara�tre imagemagick �, a �crit Dahl. Pour finir, il admet avoir quelques erreurs avec Node.js, chose qu'il essaie d�sormais de corriger avec Deno.

� L'avenir des langages de script est le JavaScript du navigateur. L'erreur fondamentale de Node.js a �t� de s'�carter du navigateur au fur et � mesure que de nouvelles API �taient normalis�es, en inventant trop de choses. En 2010, nous n'avions pas de modules ES, mais une fois qu'ils ont �t� normalis�s, ils auraient d� �tre int�gr�s � Node. La m�me chose peut �tre dite pour les promises, async/await, fetch, streams, etc. �, a-t-il d�clar�. � Des �l�ments non standardis�s comme package.json, node_modules et NPM seront finalement soit standardis�s et ajout�s au navigateur, soit supplant�s par des remplacements align�s sur le Web �, a-t-il d�clar�.

En gros, le cr�ateur de Node.js de Deno pense que l'universalit� de JavaScript favorise l'�mergence d'une nouvelle abstraction de type conteneur. Les conteneurs Linux ne vont pas dispara�tre, mais penser en mati�re de conteneurs JavaScript pourrait simplifier de nombreux services Web. Dahl a d�clar� qu'il s'attendait � ce que la technologie des conteneurs JavaScript se d�veloppe au cours des deux prochaines ann�es. Deno explore cette id�e, notamment dans son produit Deno Deploy, et recrute actuellement des ing�nieurs pour la d�velopper.

Source : Ryan Dahl

Et vous ?

Quel est votre avis sur le sujet ?
Que pensez-vous du concept de conteneur JavaScript ?
Que pensez-vous des projections de Dahl sur l'avenir des conteneurs JavaScript ?
Que pensez-vous de l'utilisation des conteneurs JavaScript � la place des conteneurs Linux ?

Voir aussi

Podman : un moteur de conteneur sans "daemon" open source, con�u pour d�velopper, g�rer et ex�cuter des conteneurs sur Linux, une alternative � Docker ?

L'attrait des d�veloppeurs pour les conteneurs et Kubernetes est principalement motiv� par l'�volution de leur carri�re, selon une �tude de Red Hat

51 % des 4 millions d'images Docker analys�es pr�sentent des vuln�rabilit�s critiques, et certaines d'entre elles peuvent �tre consid�r�es comme malveillantes, selon une �tude de Prevasio

La s�curit� et la conformit� des conteneurs restent un d�fi majeur, tandis que leur adoption s'acc�l�re, 89 % des professionnels de DevOps poss�dant des d�ploiements actifs, selon NeuVector
Vous avez lu gratuitement 0 articles depuis plus d'un an.
Soutenez le club developpez.com en souscrivant un abonnement pour que nous puissions continuer � vous proposer des publications.

Une erreur dans cette actualit� ? Signalez-nous-la !

Avatar de Fagus
Membre expert https://www.developpez.com
Le 14/05/2022 � 16:55
L'auteur pr�che pour sa paroisse (Deno) en voulant r�soudre un probl�me d�j� r�solu ? Les containers marchent d�j� et Go fait d�j� le job avec sa compilation multi-plateformes avec des performances meilleures que JS pour un langage tr�s abordable.

Quant � dire que JS est id�al (tellement que Typescript existe) ou ressemble beaucoup � python, smalltalk ... (j'avais commenc� un cours de Pharo, c'est un choc culturel)
3  0 
Avatar de Eric80
Membre �prouv� https://www.developpez.com
Le 12/05/2022 � 10:13
j imagine que l auteur parle surtout des conteneurs stock�s sur le cloud, mais il n y a pas que le cloud dans la vie..

dans le projet ds lequel je bosse (on utilise des conteneurs sur des box qui g�rent de l IOT, les box envoient les donn�es sur le cloud), on a fait l'�tape inverse pour les conteneurs embarqu�s: r�-�criture des app javascripts en Go sur Alpine pour des conteneurs plus l�gers (/5 ou /10) et avec une meilleure ma�trise sur les MAJ que les conteneurs node.js
dans le m�me mouvement, le conteneur .NET Core que je g�rais est aussi pass� � la trappe, le passage en Go a divis� par 4 la taille du conteneur (70 � 18 Mo l image, 70 Mo seulement en .NET Core est d�j� une belle optimisation)
2  0 
Avatar de TheGuit
Membre r�gulier https://www.developpez.com
Le 12/05/2022 � 10:33
Citation Envoy� par lingtalfi Voir le message
L'id�e d'avoir javascript comme language universel me pla�t bien, car c'est probablement le language le plus facile � apprendre.
Un peu comme l'anglais est le language universel pour les humains.
Javascript le langage le plus facile � apprendre ? Dans quel monde ? Quand 80% des d�veloppeurs n'ont pas compris ce qu'est le prototypage (et que non c'est pas parce que on a un mot cl� class que on fait des classes en JS), qu'ils n'ont pas compris l'asynchrone et le mono-threading de JS, qu'ils n'ont pas compris bien souvent comment fonctionne r�ellement le typage, quand le paradigme fonctionnel est souvent un gros mot, ...

Non javascript est de loin un des langages les plus ardu � apprendre. De loin plus compliqu� qu'un langage imp�ratif et statiquement typ�.
4  2 
Avatar de myNameIsFlo
Membre habitu� https://www.developpez.com
Le 13/05/2022 � 12:05
L'id�e du Javascript partout me donne mal au ventre. J'aimerai que ce langage de script retourne � sa place d'origine.
M'enfin des conteneurs JS pourquoi pas si �a peut �tre utile... je pr�f�rerais lire que wasm va devenir le conteneur universel 😉
1  0 
Avatar de lingtalfi
Nouveau membre du Club https://www.developpez.com
Le 12/05/2022 � 9:05
L'id�e d'avoir javascript comme language universel me pla�t bien, car c'est probablement le language le plus facile � apprendre.
Un peu comme l'anglais est le language universel pour les humains.
0  6