WSL 2 neden WSL'den 13 kat daha hızlı: Insider Preview'dan gösterimler

Microsoft, Windows Mayıs 2020 Güncelleştirmesi'nin (20H1) yayımını hazırlıyor. Bu güncelleme bazı güzel kullanıcı arayüzü iyileştirmeleri içerecektir, ancak geliştiriciler ve Windows'un yeni sürümündeki diğer kişiler için daha önemli olan şey şudur: WSL 2 (Linux için Windows Alt Sistemi). Bu, Windows işletim sistemine geçmek isteyen ancak cesaret edemeyenler için önemli bir bilgidir.

Dave Rupert, 2 inç Surface dizüstü bilgisayarına WSL 13'yi yükledi ve ilk sonuçlar
Hoş sürpriz:

WSL 2 neden WSL'den 13 kat daha hızlı: Insider Preview'dan gösterimler

WSL'nin ikinci versiyonu birincisinden 13 kat daha hızlı! Ücretsiz olarak 13 kat performans artışı elde etmek her gün mümkün değil. Bu sonuçları ilk gördüğümde ürperdim ve erkeksi bir gözyaşı döktüm. Neden? Çoğunlukla, WSL'nin ilk sürümüyle 5 yıl boyunca çalışarak biriktirdiğim kayıp zamanın yasını tutuyordum.

Ve bunlar sadece rakamlar değil. WSL 2'de, npm kurulumu, oluşturma, paketleme, dosyaları görüntüleme, sıcak modülleri yeniden yükleme, sunucuları başlatma - bir web geliştiricisi olarak günlük olarak kullandığım hemen hemen her şey çok daha hızlı hale geldi. Yeniden Mac kullanıyormuşsunuz gibi hissettiriyor (ya da belki daha iyi, çünkü Apple son birkaç yıldır daha iyi pil ömrü sağlamak amacıyla işlemcilerini radikal bir şekilde sınırlıyor).

Bu kadar çeviklik nereden geliyor?

Verimlilikte 13 kat artışı nasıl başardılar? Daha önce Mac'e geçmeyi düşündüğümde, tamamen varsayım düzeyinde de olsa bazı seçenekleri de atmıştım. Gerçek şu ki, WSL'nin ilk sürümünün mimarisi nedeniyle diske yazma ve Linux sistem çağrıları oldukça pahalıydı (zaman maliyetleri açısından). Şimdi tahmin edin modern web geliştirme büyük ölçüde neye dayanıyor? Evet. Bir dosyayı her kaydettiğinizde bir dizi bağımlılığı ve kod parçacıklarını bir araya getirdiğinizde, aslında on binlerce dosya üzerinde çok sayıda disk yazma ve sistem çağrısı yapıyorsunuz demektir.

Bunu zor yoldan öğrendikten sonra unutması zordur. Her şeyin ne kadar yavaş ve üzücü bir şekilde çalıştığını hayal ettiğinizde yavaş yavaş depresyona girmeye başlarsınız. Ve dünyanızın artık aynı olmayacağını ve sevdiğiniz aracın artık kullanışlı veya etkili görünmediğini fark edersiniz.

Neyse ki WSL ekibi risk aldı ve alt sistemi tamamen yeniden yazdı. WSL 2'de bu sorunlar çözüldü: geliştiriciler Windows'ta kendi Linux sanal makinelerini oluşturdular ve dosya işlemlerini bir VHD (Sanal Donanım Diski) ağ sürücüsüne devrettiler. Buradaki değiş tokuş, onu ilk kez çalıştırdığınızda sanal makineyi başlatmak için zaman harcamanız gerektiğidir. Bu süre milisaniye cinsinden ölçülür ve kişisel olarak benim için neredeyse hiç fark edilmez. Mesela ben keyifle bekliyorum çünkü tüm bunların ne için olduğunu biliyorum.

Dosyalar şimdi nerede yaşayacak?

WSL 2'den tam anlamıyla yararlanmak için proje dosyalarınızı /mnt/c/Kullanıcılar/<kullanıcı adı>/ yeni ana dizine ~/Linux yeni bir VHD'de. Bu sürücünün içeriğini şu adrese giderek çevrimiçi olarak görebilirsiniz: \\wsl$\<dağıtım adı>\<kullanıcı adı>\home veya komutu girerek explorer.exe Bash kabuğunuzdan.

Bu gerçek bir Linux dosya sistemidir ve beklediğiniz gibi hareket eder ve davranır. Bir klasör oluşturdum ~/projeler, tüm proje depolarımın yaşadığı yer ve ardından projeleri code komutunu kullanarak Visual Studio Code'da açıyorum.

VS Kodu ne olacak?

WSL'yi yüklemegenişleme VS Code (VS Code Remote - WSL) üzerinde uzaktan geliştirme için geliştiricinin rahat çalışmasını sağlayan son aşamadır. Uzantı, VS Code'un doğrudan Linux sanal makinesiyle etkileşim kurarak tüm işlemlerini (git komutları, konsollar, uzantıların yüklenmesi vb.) gerçekleştirmesine olanak tanır. Bu, tüm süreci oldukça özerk hale getirir.

İlk başta bu uzantıyı yüklemek zorunda kaldığım için biraz üzüldüm çünkü daha önce yüklediğim ve yapılandırdığım şeyi yeniden yüklemem gerekiyordu. Ama artık bunu takdir ediyorum çünkü hangi ortamda çalıştığımı ve dosyalarımın nerede bulunduğunu gösteren özel bir görselleştirme katmanı var. Bu, Windows web geliştirme sürecini daha şeffaf hale getirdi ve VS Code'da sürüm kontrolü kullanıcı arayüzünün kullanımını çok daha kolay hale getirdi.

Mutluluk gözyaşları ve parlak bir gelecek umudu

Windows Mayıs 2020 Güncelleştirmesi'nin bir sonraki sürümü ve güçlü oyun bilgisayarımda ortalıkta dolaşan optimize edilmiş Linux alt sistemi konusunda heyecanlanmadan edemiyorum. Henüz bilmediğim başka sorunlar da olabilir ama sonra Insider Önizleme WSL ekibinin sorunların çoğunu çözdüğü sonucuna vardım.

Ayrıca şunu da unutmayın Windows Terminali çok iyi! Sanki sekmelerin olmayışı, JSON Ayarları ve Windows'ta "kendini iyi hissetme" ihtiyacı hakkındaki şikayetlerimi duymuşlardı. Kulağa hala tuhaf geliyor ama Windows Terminali belki de Windows için en iyi terminaldir.

5 yıldır Windows üzerinde çalıştığım için çok şey yaşadım: Rails'i yükleyememek, yapay Cygwin kabuklarıyla mücadele etmek. Microsoft, WSL'nin ilk sürümünü duyurduğunda aynı Build 2016 konferansında ön sırada oturuyordum. Ve sonra Windows'ta web geliştirmenin nihayet yeni bir seviyeye ulaşacağını ummaya başladım. Şüphesiz WSL 2 o zamandan bu yana gördüğüm en büyük gelişme ve yeni bir çağın eşiğindeyiz gibi görünüyor.

Reklam gibi

Eğer iş gerektiriyorsa Windows sunucuları, o zaman kesinlikle bize — Windows Server 2012, 2016 veya 2019'un 2 GB veya daha yüksek RAM'e sahip planlara otomatik kurulumu, lisans zaten fiyata dahildir. Toplam günde 21 ruble'den! Ayrıca sonsuz sunucularımız da var 😉

WSL 2 neden WSL'den 13 kat daha hızlı: Insider Preview'dan gösterimler

Kaynak: habr.com

Yorum ekle