Miks on WSL 2 13 korda kiirem kui WSL: Insider Preview'i kogemused

Microsoft valmistab ette Windows May 2020 Update (20H1) väljaandmist. See värskendus sisaldab mitmeid meeldivaid kasutajaliidese täiustusi, kuid arendajatele ja teistele huvilistele on olulisem, et uuest Windowsi versioonist tuleb WSL 2 (Windows Subsystem for Linux). See on asjakohane teave neile, kes mõtlesid Windowsi peale, kuid ei julgenud üleminekut teha.

Dave Rupert installis WSL 2 oma 13-tollisele Surface'i sülearvutile ja esimesed tulemused
olid meeldivalt üllatavad:

Miks on WSL 2 13 korda kiirem kui WSL: Insider Preview'i kogemused

WSL 2 on 13 korda kiirem kui esimene versioon! Ei juhtu iga päev, et saate tasuta 13-kordse jõudluse tõusu. Tundsin värinat ja pillasin meelevalt mehe pisara, kui esimest korda neid tulemusi nägin. Miks? No, põhimõtteliselt leinasin seda kadunud aega, mis on kulunud 5 aastat töötades esimese WSL versiooniga.

Ja need pole lihtsalt numbrid. WSL 2-s on npm-i installimine, ehitamine, pakkimine, failide vaatamine, kuumade moodulite taaskäivitamine, serverite käivitamine — peaaegu kõik, mida ma iga päev veebiarendajana kasutan, on hakanud töötama oluliselt kiiremini. See tundub nagu tunne, et istuksin uuesti Maci taha (või võib-olla isegi paremini, kuna Apple on viimasel ajal radikaalselt oma protsessoreid kärpinud, et pikendada aku kestvust).

Kust tuleb see kiirus?

Kuidas nad saavutasid 13-kordse jõudluse kasvu? Varem, kui ma mõtlesin Macile üleminekule, viskasin ka mõned ideed, kuigi need olid puhtalt spekulatiivsed. Tõde on see, et Linuxi kettakirjutamine ja süsteemi kõned olid esimese WSL versiooni arhitektuuri tõttu üsna kulukad (aja mõttes). Ja nüüd, arva ära, millele praegune veebiarendus suuresti toetub? Jah. Kui kogute kokku hulga sõltuvusi ja koodifragmente iga faili salvestamisel, teete tegelikult palju kettakirjutamisi ja süsteemi kõnesid kümnete tuhandete failide jaoks.

Kui te seda oma kibeda kogemuse pealt teate, on pärast seda raske kõike unustada. Hakkate järk-järgult masendusse langema, kui mõtleme, kui aeglaselt ja kurvalt see kõik töötab. Ja saate aru, et teie maailm ei ole enam endine ja teie lemmikinstrument ei tundu enam kasulik ja efektiivne.

Küll aga on WSL meeskond riskinud ja kirjutanud alusüsteemi täielikult ümber. WSL 2-s on need probleemid lahendatud: arendajad on Windowsi integreerinud oma Linuxi virtuaalmasina ja lubanud failitoimingud võrguühenduse kettale VHD (Virtuaalne Riistvaraketas). Kompromiss seisneb selles, et esmakordsel käivitamisel peate kulutama aega virtuaalse masina käivitamiseks. See aeg arvestatakse millisekundites ja isiklikult minu jaoks on see vaevumärgatav. Ma ootan näiteks rõõmuga, sest tean, mille nimel kõik see on.

Kus nüüd failid elavad?

Et WSL 2-st täielikult kasu saada, soovite oma projekti failid liikuda /mnt/c/Users/<имя пользователя>/ uude kodukatalooge ~/Linux uue VHD peal. Saate seda kettaruumi sisu võrgu kaudu näha, liikudes aadressile \\ wsl $ \ \ \ home või sisestades käsu explorer.exe oma Bash-shell-ist.

See on tõeline Linuxi failisüsteem, mille toimimine ja käitumine on ootuspärane. Ma lõin kausta ~/projects, kuhu elavad kõik minu projektide hoidlad ja seejärel avasin projektid Visual Studio Code'is, kasutades käsku code.

Aga kuidas on VS Code'iga?

WSL-i installiminelaiendust kaug-arenduseks VS Code'is (VS Code Remote — WSL) on viimane samm, mis tagab arendaja mugava töö. Laiendus võimaldab VS Code'il teha kõiki oma toiminguid (git käsud, konsool, laienduste installimine jne), suheldes otse Linuxi virtuaalmasinaga. See teeb kogu protsessi väga iseseisikuks.

Alguses olin ma natuke pettunud selle laienduse installimise vajadusest, sest pidin uuesti installeerima kõik, mis olin eelnevalt installeerinud ja seadistanud. Kuid nüüd olen väärtustanud seda, kuna ilmavalgust on ilmunud uus visuaalne kiht, mis näitab, millises keskkonnas ma töötan ja kus mu failid elavad. See on teinud veebiarenduse Windowsis palju läbipaistvamaks ja oluliselt lihtsustanud kasutajaliidese kasutamist versioonihalduse jaoks Visual Studio Code'is.

Õnne pisarad ja lootus helge tuleviku peale

Mulle ei anna rahu rõõm, kui mõtlen järgmisele Windows May 2020 Update'i väljaandele ja optimeeritud Linuxi alusüsteemile, mis lihtsalt lendab minu võimsas mänguarvutis. Võib-olla on veel mõningaid probleeme, millest ma veel ei tea, kuid pärast Insider Preview olen jõudnud järeldusele, et WSL meeskond on lahendanud enamiku probleemidest.

Ärge unustage ka, et Windows Terminal ka samuti hea! Tundub, et nad kuulasid mu kaebusi vahekaartide, JSON-seadete ja vajaduse üle "tunda end ägedana" Windowsis. See kõlab endiselt kummaliselt, kuid Windows Terminal on ilmselt parim terminal Windowsile.

Töötades Windowsis 5 aastat, olen palju kogenud: raskused Railsi installimisel, võitlus Cygwini kunstlike shellidega. Istusin esireas 2016. aasta Build konverentsil, kui Microsoft tutvustas WSLi esimest versiooni. Sel hetkel tekkis mul lootus, et veebiarendus Windowsis tõuseb lõpuks uuele tasemele. Ilmselt on WSL 2 suurim täiustamine, mida olen sellest ajast näinud, ja näib, et oleme uue ajastu äärel.

Reklaami õigustes

Kui vajalikud on Windowsi serverid, siis pöörduda kindlasti meie poole — Windows Server 2012, 2016 või 2019 automaatne installatsioon plaanides alates 2 GB RAMiga, litsents on juba hinna sees. Alates 21 rubla päevas! Ja meil on ka igavesed serverid 😉

Miks on WSL 2 13 korda kiirem kui WSL: Insider Preview'i kogemused

Allikas: habr.com

Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid 🔥 Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster