Proč je WSL 2 13krát rychlejší než WSL: dojmy z Insider Preview

Microsoft připravuje vydání aktualizace Windows May 2020 Update (20H1). Tato aktualizace bude obsahovat některá pěkná vylepšení uživatelského rozhraní, ale pro vývojáře a ostatní je v nové verzi systému Windows důležitější, WSL 2 (Podsystém Windows pro Linux). To je relevantní informace pro ty, kteří chtěli přejít na OS Windows, ale neodvážili se.

Dave Rupert nainstaloval WSL 2 na svůj 13palcový Surface laptop a první výsledky
Příjemně překvapen:

Proč je WSL 2 13krát rychlejší než WSL: dojmy z Insider Preview

Druhá verze WSL je 13krát rychlejší než první! Nestává se každý den, že získáte zdarma 13násobné zvýšení výkonu. Cítil jsem mrazení a uronil jsem mužnou slzu, když jsem poprvé viděl tyto výsledky. Proč? No, většinou jsem truchlil nad ztraceným časem, který se nashromáždil za 5 let práce s první verzí WSL.

A to nejsou jen čísla. Ve WSL 2 se instalace npm, sestavování, balení, prohlížení souborů, opětovné načítání horkých modulů, spouštění serverů - téměř vše, co denně používám jako webový vývojář, stalo mnohem rychlejším. Je to jako znovu na Macu (nebo možná lépe, protože Apple v posledních několika letech radikálně omezil své procesory ve prospěch lepší výdrže baterie).

Odkud se taková agilita bere?

Jak dosáhli 13násobného zvýšení produktivity? Dříve, když jsem přemýšlel o přechodu na Mac, také jsem vyhodil některé možnosti, i když čistě na úrovni předpokladů. Faktem je, že zápis na disk a systémová volání Linuxu byla vzhledem k architektuře první verze WSL poměrně drahá (z hlediska časových nákladů). A teď hádejte, na čem moderní vývoj webu hodně spoléhá? Ano. Když dáte dohromady spoustu závislostí a úryvků kódu pokaždé, když uložíte soubor, ve skutečnosti provádíte spoustu zápisů na disk a systémových volání u desítek tisíc souborů.

Jakmile se to naučíte tvrdě, je těžké zapomenout. Začnete postupně propadat depresi, když si představíte, jak pomalu a smutně to všechno funguje. A uvědomíte si, že váš svět už nebude stejný a nástroj, který jste si oblíbili, se vám již nezdá užitečný ani efektivní.

Naštěstí tým WSL zariskoval a subsystém kompletně přepsal. Ve WSL 2 byly tyto problémy vyřešeny: vývojáři zabudovali svůj vlastní linuxový virtuální stroj do Windows a delegovali operace se soubory na síťovou jednotku VHD (Virtual Hardware Disk). Kompromisem je, že při prvním spuštění musíte strávit čas roztočením virtuálního stroje. Tento čas se měří v milisekundách a pro mě osobně je sotva postřehnutelný. Například s potěšením čekám, protože vím, k čemu to všechno je.

Kde budou soubory nyní uloženy?

Chcete-li plně využít výhod WSL 2, budete chtít přesunout soubory projektu z /mnt/c/Users/<uživatelské jméno>/ do nového domovského adresáře ~/Linux na novém VHD. Obsah tohoto disku si můžete prohlédnout online na adrese \\wsl$\<název distribuce>\<uživatelské jméno>\home nebo zadáním příkazu explorer.exe z vašeho Bash shellu.

Toto je skutečný linuxový souborový systém, který se chová a chová se tak, jak byste očekávali. Vytvořil jsem složku ~/projekty, což je místo, kde žijí všechna moje projektová úložiště, a poté projekty otevřu v kódu Visual Studio pomocí příkazu code.

A co VS Code?

Instalace WSLrozšíření pro vzdálený vývoj na VS Code (VS Code Remote - WSL) je poslední fází, která zajišťuje pohodlnou práci pro vývojáře. Rozšíření umožňuje VS Code provádět všechny své operace (příkazy git, konzole, instalace rozšíření atd.) přímou interakcí s virtuálním strojem Linux. Díky tomu je celý proces velmi autonomní.

Zpočátku jsem byl trochu naštvaný, že musím nainstalovat toto rozšíření, protože jsem potřeboval znovu nainstalovat to, co jsem předtím nainstaloval a nakonfiguroval. Ale teď to oceňuji, protože existuje speciální vizualizační vrstva, která ukazuje, v jakém prostředí pracuji a kde moje soubory žijí. Díky tomu byl proces vývoje webu Windows transparentnější a bylo mnohem snazší používat uživatelské rozhraní pro správu verzí ve VS Code.

Slzy štěstí a naděje na světlou budoucnost

Nemohu si pomoci, ale cítím se nadšený z dalšího vydání aktualizace Windows May 2020 Update a optimalizovaného linuxového subsystému, který právě letí na mém výkonném herním PC. Mohou nastat nějaké další problémy, o kterých zatím nevím, ale až potom Insider Preview Dospěl jsem k závěru, že tým WSL vyřešil většinu problémů.

Navíc na to nezapomínejte Terminál systému Windows taky dobrý! Bylo to, jako by slyšeli mé stížnosti na nedostatek karet, nastavení JSON a potřebu „cítit se cool“ ve Windows. Stále to zní divně, ale Windows Terminal je možná nejlepší terminál pro Windows.

Po 5 letech práce na Windows jsem si toho prošel hodně: neschopnost nainstalovat Rails, bojovat s umělými shelly Cygwin. Měl jsem sedadlo v první řadě na stejné konferenci Build 2016, když Microsoft oznámil první verzi WSL. A pak jsem začal doufat, že vývoj webu na Windows konečně dosáhne nové úrovně. Bezpochyby je WSL 2 největším zlepšením, které jsem od té doby viděl, a vypadá to, že jsme na vrcholu nové éry.

Jako reklama

Pokud to práce vyžaduje Windows servery, tak ty určitě nám — automatická instalace Windows Server 2012, 2016 nebo 2019 na plány s 2 GB RAM nebo vyšší, licence je již zahrnuta v ceně. Celkový od 21 rublů za den! Máme i věčné servery 😉

Proč je WSL 2 13krát rychlejší než WSL: dojmy z Insider Preview

Zdroj: www.habr.com

Přidat komentář