Pourquoi WSL 2 est 13 fois plus rapide que WSL : impressions d'Insider Preview

Microsoft prépare la sortie de la mise à jour Windows de mai 2020 (20H1). Cette mise à jour contiendra quelques améliorations intéressantes de l'interface utilisateur, mais ce qui est le plus important pour les développeurs et autres utilisateurs de la nouvelle version de Windows, c'est que WSL 2 (Sous-système Windows pour Linux). Il s'agit d'informations pertinentes pour ceux qui voulaient passer au système d'exploitation Windows, mais qui n'ont pas osé.

Dave Rupert a installé WSL 2 sur son ordinateur portable Surface 13 pouces et premiers résultats
Agréablement surpris:

Pourquoi WSL 2 est 13 fois plus rapide que WSL : impressions d'Insider Preview

La deuxième version de WSL est 13 fois plus rapide que la première ! Ce n’est pas tous les jours que vous bénéficiez gratuitement d’une amélioration des performances 13x. J'ai ressenti des frissons et j'ai versé une larme virile lorsque j'ai vu ces résultats pour la première fois. Pourquoi? Eh bien, je pleurais surtout le temps perdu accumulé en 5 ans de travail avec la première version de WSL.

Et ce ne sont pas que des chiffres. Dans WSL 2, l'installation de npm, la création, l'empaquetage, l'affichage de fichiers, le rechargement de modules chauds, le démarrage de serveurs - presque tout ce que j'utilise quotidiennement en tant que développeur Web est devenu beaucoup plus rapide. On a l'impression d'être à nouveau sur un Mac (ou peut-être mieux, puisque Apple a radicalement limité ses processeurs au profit d'une meilleure autonomie de la batterie ces dernières années).

D’où vient une telle agilité ?

Comment ont-ils réussi à multiplier par 13 la productivité ? Auparavant, lorsque je pensais passer à Mac, j'avais également abandonné certaines options, mais uniquement au niveau des hypothèses. Le fait est que l'écriture sur disque et les appels système Linux étaient assez coûteux (en termes de temps) en raison de l'architecture de la première version de WSL. Et maintenant, devinez sur quoi repose en grande partie le développement Web moderne ? Oui. Lorsque vous rassemblez un ensemble de dépendances et d'extraits de code à chaque fois que vous enregistrez un fichier, vous effectuez en réalité beaucoup d'écritures sur disque et d'appels système sur des dizaines de milliers de fichiers.

Une fois qu’on l’a appris à ses dépens, il est difficile de l’oublier. Vous commencez progressivement à devenir déprimé lorsque vous imaginez à quel point tout cela fonctionne lentement et tristement. Et vous vous rendez compte que votre monde ne sera plus le même et que l’outil qui vous plaisait ne vous semble plus utile ni efficace.

Heureusement, l’équipe WSL a pris un risque et a complètement réécrit le sous-système. Dans WSL 2, ces problèmes ont été résolus : les développeurs ont intégré leur propre machine virtuelle Linux dans Windows et ont délégué les opérations sur les fichiers à un lecteur réseau VHD (Virtual Hardware Disk). Le compromis est que la première fois que vous l'exécutez, vous devez passer du temps à faire tourner la machine virtuelle. Ce temps est mesuré en millisecondes et est à peine perceptible pour moi personnellement. Par exemple, j’attends avec plaisir, car je sais à quoi ça sert tout ça.

Où seront les fichiers désormais ?

Pour profiter pleinement de WSL 2, vous souhaiterez déplacer vos fichiers de projet de /mnt/c/Utilisateurs/<nom d'utilisateur>/ vers le nouveau répertoire personnel ~/Linux sur un nouveau VHD. Vous pouvez voir le contenu de ce lecteur en ligne en allant sur \\wsl$\<nom de distribution>\<nom d'utilisateur>\home ou en entrant la commande explorer.exe depuis votre shell Bash.

Il s'agit d'un véritable système de fichiers Linux, et il agit et se comporte comme prévu. J'ai créé un dossier ~/projets, où se trouvent tous mes référentiels de projets, puis j'ouvre les projets dans Visual Studio Code à l'aide de la commande code.

Et VS Code ?

Installation de WSLélargir le pour le développement à distance sur VS Code (VS Code Remote - WSL) est la dernière étape qui garantit un travail confortable pour le développeur. L'extension permet à VS Code d'effectuer toutes ses opérations (commandes git, consoles, installation d'extensions, etc.) en interagissant directement avec la machine virtuelle Linux. Cela rend l’ensemble du processus très autonome.

Au début, j'étais un peu contrarié de devoir installer cette extension car je devais réinstaller ce que j'avais installé et configuré auparavant. Mais maintenant, je l'apprécie car il existe une couche de visualisation spéciale qui montre dans quel environnement je travaille et où se trouvent mes fichiers. Cela a rendu le processus de développement Web Windows plus transparent et a rendu beaucoup plus facile l'utilisation de l'interface utilisateur de contrôle de version dans VS Code.

Des larmes de bonheur et d'espoir pour un avenir radieux

Je ne peux m'empêcher d'être enthousiasmé par la prochaine version de la mise à jour Windows de mai 2020 et par le sous-système Linux optimisé qui vole sur mon puissant PC de jeu. Il y a peut-être d'autres problèmes que je ne connais pas encore, mais après Insider Aperçu J'en ai conclu que l'équipe du WSL avait résolu la plupart des problèmes.

De plus, n'oubliez pas que Terminal Windows bien aussi! C'était comme s'ils entendaient mes plaintes concernant le manque d'onglets, de paramètres JSON et le besoin de « se sentir cool » dans Windows. Cela semble toujours étrange, mais Windows Terminal est peut-être le meilleur terminal pour Windows.

Ayant travaillé sur Windows pendant 5 ans, j'ai vécu beaucoup de choses : ne pas pouvoir installer Rails, avoir des difficultés avec les shells artificiels Cygwin. J'étais aux premières loges lors de la même conférence Build 2016 lorsque Microsoft a annoncé la première version de WSL. Et puis j’ai commencé à espérer que le développement Web sous Windows atteindrait enfin un nouveau niveau. Sans aucun doute, WSL 2 est la plus grande amélioration que j’ai vue depuis et il semble que nous soyons à l’aube d’une nouvelle ère.

Comme la publicité

Si le travail nécessite Serveurs Windows, alors tu es définitivement à nous — installation automatique de Windows Server 2012, 2016 ou 2019 sur les forfaits avec 2 Go de RAM ou plus, la licence est déjà incluse dans le prix. Total à partir de 21 roubles par jour! Nous avons aussi des serveurs éternels 😉

Pourquoi WSL 2 est 13 fois plus rapide que WSL : impressions d'Insider Preview

Source: habr.com

Ajouter un commentaire