Miks WSL 2 on 13 korda kiirem kui WSL: Insideri eelvaate näitamised

Microsoft valmistab ette Windowsi mai 2020 värskenduse (20H1) väljalaset. See värskendus sisaldab mõningaid toredaid kasutajaliidese täiustusi, kuid Windowsi uues versioonis on arendajatele ja teistele kasutajatele olulisem see, et WSL 2 (Windowsi alamsüsteem Linuxile). See on asjakohane teave neile, kes soovisid üle minna Windows OS-ile, kuid ei julgenud.

Dave Rupert installis oma 2-tollisele Surface'i sülearvutile WSL 13 ja esimesed tulemused
Meeldivalt üllatunud:

Miks WSL 2 on 13 korda kiirem kui WSL: Insideri eelvaate näitamised

WSL-i teine ​​versioon on 13 korda kiirem kui esimene! Mitte iga päev ei saa te tasuta jõudlust 13 korda. Tundsin külmavärinaid ja poetasin mehine pisara, kui neid tulemusi esimest korda nägin. Miks? Noh, enamasti leinasin kaotatud aega, mis oli kogunenud üle 5 aasta WSL-i esimese versiooniga töötades.

Ja need pole ainult numbrid. WSL 2-s on npm installimine, ehitamine, pakkimine, failide vaatamine, kuumade moodulite uuesti laadimine, serverite käivitamine – peaaegu kõik, mida ma veebiarendajana igapäevaselt kasutan, on muutunud palju kiiremaks. Tundub, nagu oleksite taas Macis (või võib-olla parem, kuna Apple on viimastel aastatel oma protsessoreid radikaalselt piiranud parema aku kasutusaja kasuks).

Kust selline väledus tuleb?

Kuidas nad saavutasid 13-kordse tootlikkuse kasvu? Varem, kui mõtlesin Macile üle minna, viskasin ka mõned võimalused välja, kuigi puhtalt oletuste tasemel. Fakt on see, et kettale kirjutamine ja Linuxi süsteemikõned olid WSL-i esimese versiooni arhitektuuri tõttu üsna kallid (ajakulu mõttes). Ja nüüd arvake ära, millele tänapäevane veebiarendus suuresti toetub? Jah. Kui koostate iga kord, kui faili salvestate, hunniku sõltuvusi ja koodilõike kokku panete, kirjutate tegelikult palju kettale ja korraldate süsteemikutseid kümnetele tuhandetele failidele.

Kui olete selle raskel teel õppinud, on seda raske unustada. Te hakkate järk-järgult masendusse jääma, kui kujutate ette, kui aeglaselt ja kurvalt see kõik töötab. Ja mõistate, et teie maailm ei ole enam endine ja tööriist, mis teile meeldis, ei tundu enam kasulik ega tõhus.

Õnneks võttis WSL-i meeskond riski ja kirjutas alamsüsteemi täielikult ümber. WSL 2-s need probleemid lahendati: arendajad ehitasid Windowsi sisse oma Linuxi virtuaalmasina ja delegeerisid failitoimingud VHD (Virtual Hardware Disk) võrgukettale. Kompromiss seisneb selles, et selle esmakordsel käivitamisel peate kulutama aega virtuaalse masina keerutamiseks. Seda aega mõõdetakse millisekundites ja see on mulle isiklikult vaevumärgatav. Näiteks ootan ma rõõmuga, sest ma tean, milleks see kõik on.

Kus failid nüüd elavad?

WSL 2 täielikuks kasutamiseks peate oma projektifailid mujalt teisaldama /mnt/c/Kasutajad/<kasutajanimi>/ uude kodukataloogi ~/Linux uuel VHD-l. Selle draivi sisu näete veebis, minnes aadressile \\wsl$\<levituse nimi>\<kasutajanimi>\kodu või sisestades käsu explorer.exe oma Bashi kestast.

See on tõeline Linuxi failisüsteem ning see toimib ja käitub ootuspäraselt. Tegin kausta ~/projektid, kus asuvad kõik minu projektihoidlad ja seejärel avan projektid Visual Studio Code'is koodikäsuga.

Aga VS Code?

WSL-i installiminelaienemine kaugarenduseks VS Code peal (VS Code Remote - WSL) on viimane etapp, mis tagab arendajale mugava töö. Laiendus võimaldab VS Code'il teha kõiki oma toiminguid (git-käsud, konsoolid, laienduste installimine jne), suheldes otse Linuxi virtuaalmasinaga. See muudab kogu protsessi väga autonoomseks.

Alguses olin selle laienduse installimise pärast pisut ärritunud, sest mul oli vaja uuesti installida see, mida olin varem installinud ja konfigureerinud. Kuid nüüd hindan seda, sest seal on spetsiaalne visualiseerimiskiht, mis näitab, millises keskkonnas ma töötan ja kus mu failid asuvad. See muutis Windowsi veebiarendusprotsessi läbipaistvamaks ja muutis versioonikontrolli kasutajaliidese kasutamise VS Code'is palju lihtsamaks.

Õnnepisarad ja lootus helgele tulevikule

Ma tunnen lihtsalt põnevust Windowsi mai 2020 värskenduse järgmisest väljalasest ja optimeeritud Linuxi alamsüsteemist, mis lihtsalt lendab minu võimsas mänguarvutis. Võib esineda muid probleeme, millest ma veel ei tea, aga pärast Insideri eelvaade Järeldasin, et WSL-i meeskond lahendas enamiku probleemidest.

Lisaks ärge unustage seda Windowsi terminal hea ka! Tundus, nagu oleksid nad kuulnud minu kaebusi vahekaartide puudumise, JSON-i sätete ja vajaduse kohta Windowsis "lahedalt tunda". See kõlab endiselt kummaliselt, kuid Windowsi terminal on võib-olla Windowsi jaoks parim terminal.

Olles töötanud Windowsiga 5 aastat, olen palju läbi elanud: pole suutnud Railsi installida, olen hädas kunstlike Cygwini kestadega. Olin samal Build 2016 konverentsil esireas, kui Microsoft teatas WSL-i esimesest versioonist. Ja siis hakkasin lootma, et veebiarendus Windowsis jõuab lõpuks uuele tasemele. Kahtlemata on WSL 2 suurim edasiminek, mida olen sellest ajast peale näinud, ja tundub, et oleme uue ajastu tipul.

Reklaamide õiguste kohta

Kui töö nõuab Windowsi serverid, siis kindlasti meile — Windows Server 2012, 2016 või 2019 automaatne installimine 2 GB või suurema RAM-iga plaanidele, litsents on juba hinna sees. Kokku alates 21 rubla päevas! Meil on ka igavesed serverid 😉

Miks WSL 2 on 13 korda kiirem kui WSL: Insideri eelvaate näitamised

Allikas: www.habr.com

Lisa kommentaar