De ce WSL 2 este de 13 ori mai rapid decât WSL: impresii din Insider Preview

Microsoft pregătește lansarea actualizării Windows mai 2020 (20H1). Această actualizare va conține câteva îmbunătățiri frumoase ale interfeței cu utilizatorul, dar ceea ce este mai important pentru dezvoltatori și pentru alții în noua versiune de Windows este că WSL 2 (Subsistem Windows pentru Linux). Acestea sunt informații relevante pentru cei care au vrut să treacă la sistemul de operare Windows, dar nu au îndrăznit.

Dave Rupert a instalat WSL 2 pe laptopul său Surface de 13 inchi și primele rezultate
Plăcut surprins:

De ce WSL 2 este de 13 ori mai rapid decât WSL: impresii din Insider Preview

A doua versiune de WSL este de 13 ori mai rapidă decât prima! Nu în fiecare zi obțineți un spor de performanță de 13 ori gratuit. Am simțit fiori și am vărsat o lacrimă bărbătească când am văzut pentru prima dată aceste rezultate. De ce? Ei bine, în cea mai mare parte, plângeam timpul pierdut care acumulase peste 5 ani de lucru cu prima versiune de WSL.

Și acestea nu sunt doar numere. În WSL 2, instalarea npm, construirea, împachetarea, vizualizarea fișierelor, reîncărcarea modulelor fierbinți, pornirea serverelor - aproape tot ce folosesc zilnic ca dezvoltator web a devenit mult mai rapid. Se simte ca și cum ai fi din nou pe un Mac (sau poate mai bine, deoarece Apple și-a limitat radical procesoarele în favoarea unei durate mai bune a bateriei în ultimii ani).

De unde o asemenea agilitate?

Cum au obținut o creștere de 13 ori a productivității? Anterior, când m-am gândit să trec la Mac, am aruncat și câteva opțiuni, deși doar la nivel de presupuneri. Cert este că scrierea pe disc și apelurile de sistem Linux au fost destul de costisitoare (în termeni de costuri de timp) datorită arhitecturii primei versiuni de WSL. Și acum ghiciți pe ce se bazează în mare măsură dezvoltarea web modernă? Da. Când reuniți o grămadă de dependențe și fragmente de cod de fiecare dată când salvați un fișier, de fapt faceți multe scrieri pe disc și apeluri de sistem pe zeci de mii de fișiere.

Odată ce înveți asta pe calea grea, este greu de uitat. Începi să devii treptat deprimat când îți imaginezi cât de încet și trist funcționează totul. Și realizezi că lumea ta nu va mai fi aceeași și instrumentul care ți-a plăcut nu mai pare util sau eficient.

Din fericire, echipa WSL și-a asumat un risc și a rescris complet subsistemul. În WSL 2, aceste probleme au fost rezolvate: dezvoltatorii și-au construit propria mașină virtuală Linux în Windows și au delegat operațiuni cu fișiere pe o unitate de rețea VHD (Virtual Hardware Disk). Compartimentul este că prima dată când îl rulați, trebuie să petreceți timp rotind mașina virtuală. Acest timp este măsurat în milisecunde și abia se observă pentru mine personal. De exemplu, aștept cu plăcere, pentru că știu pentru ce sunt toate acestea.

Unde vor locui fișierele acum?

Pentru a profita din plin de WSL 2, veți dori să mutați fișierele de proiect din /mnt/c/Users/<nume utilizator>/ în noul director principal ~/Linux pe un nou VHD. Puteți vedea conținutul acestui drive online accesând \\wsl$\<nume distribuție>\<nume utilizator>\home sau prin introducerea comenzii explorer.exe din shell-ul tău Bash.

Acesta este un sistem de fișiere Linux real și acționează și se comportă așa cum v-ați aștepta. Am creat un folder ~/proiecte, care este locul în care trăiesc toate depozitele mele de proiecte și apoi deschid proiectele în Visual Studio Code folosind comanda de cod.

Dar VS Code?

Instalarea WSLexpansiune pentru dezvoltarea de la distanță pe VS Code (VS Code Remote - WSL) este ultima etapă care asigură o muncă confortabilă pentru dezvoltator. Extensia permite VS Code să efectueze toate operațiunile sale (comenzi git, console, instalare de extensii etc.) interacționând direct cu mașina virtuală Linux. Acest lucru face ca întregul proces să fie foarte autonom.

La început am fost puțin supărat că trebuie să instalez această extensie pentru că trebuia să reinstalez ceea ce instalasem și configurasem înainte. Dar acum apreciez pentru că există un strat special de vizualizare care arată în ce mediu lucrez și unde trăiesc fișierele mele. Acest lucru a făcut procesul de dezvoltare web Windows mai transparent și a făcut mult mai ușor de utilizat interfața de utilizare pentru controlul versiunilor în VS Code.

Lacrimi de fericire și speranță pentru un viitor luminos

Nu mă pot abține să nu mă simt încântat de următoarea lansare a actualizării Windows mai 2020 și de subsistemul optimizat Linux care doar zboară pe computerul meu puternic de jocuri. S-ar putea să apară și alte probleme despre care nu știu încă, dar după Insider Preview Am ajuns la concluzia că echipa WSL a rezolvat majoritatea problemelor.

În plus, nu uitați că Windows Terminal prea bun! Parcă mi-au auzit plângerile despre lipsa file-urilor, setărilor JSON și nevoia de a „a simți cool” în Windows. Încă sună ciudat, dar Windows Terminal este poate cel mai bun terminal pentru Windows.

După ce am lucrat pe Windows timp de 5 ani, am trecut prin multe: nu am putut instala Rails, mă lupt cu shell-uri artificiale Cygwin. Am avut un loc în primul rând la aceeași conferință Build 2016 când Microsoft a anunțat prima versiune de WSL. Și apoi am început să sper că dezvoltarea web pe Windows va atinge în sfârșit un nou nivel. Fără îndoială, WSL 2 este cea mai mare îmbunătățire pe care am văzut-o de atunci și se pare că suntem în pragul unei noi ere.

Despre drepturile de publicitate

Dacă munca necesită servere Windows, atunci cu siguranță pentru noi — instalarea automată a Windows Server 2012, 2016 sau 2019 pe planuri cu 2 GB RAM sau mai mare, licența este deja inclusă în preț. Total de la 21 de ruble pe zi! Avem și servere eterne 😉

De ce WSL 2 este de 13 ori mai rapid decât WSL: impresii din Insider Preview

Sursa: www.habr.com

Adauga un comentariu