Por que o WSL 2 é 13 vezes mais rápido que o WSL: impressões do Insider Preview

A Microsoft está preparando o lançamento da atualização de maio de 2020 do Windows (20H1). Esta atualização conterá algumas melhorias interessantes na interface do usuário, mas o que é mais importante para os desenvolvedores e outras pessoas na nova versão do Windows é que WSL 2 (Subsistema Windows para Linux). Esta é uma informação relevante para quem queria mudar para o sistema operacional Windows, mas não se atreveu.

Dave Rupert instalou WSL 2 em seu laptop Surface de 13 polegadas e primeiros resultados
agradavelmente surpreso:

Por que o WSL 2 é 13 vezes mais rápido que o WSL: impressões do Insider Preview

A segunda versão do WSL é 13 vezes mais rápida que a primeira! Não é todo dia que você obtém um aumento de desempenho de 13x gratuitamente. Senti arrepios e derramei lágrimas masculinas quando vi esses resultados pela primeira vez. Por que? Bem, principalmente eu estava de luto pelo tempo perdido acumulado ao longo de 5 anos de trabalho com a primeira versão do WSL.

E estes não são apenas números. No WSL 2, instalação do npm, construção, empacotamento, visualização de arquivos, recarga de módulos quentes, inicialização de servidores - quase tudo que uso diariamente como desenvolvedor web se tornou muito mais rápido. É como estar em um Mac novamente (ou talvez melhor, já que a Apple tem limitado radicalmente seus processadores em favor de uma melhor duração da bateria nos últimos anos).

De onde vem essa agilidade?

Como eles alcançaram um aumento de 13x na produtividade? Anteriormente, quando pensei em mudar para o Mac, também joguei fora algumas opções, embora puramente no nível das suposições. O fato é que a gravação em disco e as chamadas do sistema Linux eram bastante caras (em termos de tempo) devido à arquitetura da primeira versão do WSL. E agora adivinhe em que depende tanto o desenvolvimento web moderno? Sim. Quando você reúne um monte de dependências e trechos de código toda vez que salva um arquivo, na verdade você está fazendo muitas gravações de disco e chamadas de sistema em dezenas de milhares de arquivos.

Depois de aprender isso da maneira mais difícil, é difícil esquecer. Você começa a ficar gradualmente deprimido quando imagina como tudo funciona de forma lenta e triste. E você percebe que o seu mundo não será mais o mesmo e a ferramenta que você gostava não parece mais útil ou eficaz.

Felizmente, a equipe WSL arriscou e reescreveu completamente o subsistema. No WSL 2, esses problemas foram resolvidos: os desenvolvedores construíram sua própria máquina virtual Linux no Windows e delegaram operações de arquivos a uma unidade de rede VHD (Virtual Hardware Disk). A desvantagem é que, na primeira vez que você executá-lo, será necessário gastar tempo girando a máquina virtual. Este tempo é medido em milissegundos e é quase imperceptível para mim pessoalmente. Por exemplo, estou esperando com prazer, porque sei para que serve tudo isso.

Onde os arquivos ficarão agora?

Para aproveitar ao máximo o WSL 2, você desejará mover os arquivos do seu projeto do /mnt/c/Users/<nome de usuário>/ para o novo diretório inicial ~/Linux em um novo VHD. Você pode ver o conteúdo desta unidade online acessando \\wsl$\<nome de distribuição>\<nome de usuário>\home ou digitando o comando explorer.exe do seu shell Bash.

Este é um sistema de arquivos Linux real e age e se comporta conforme o esperado. Eu criei uma pasta ~ / projetos, que é onde ficam todos os meus repositórios de projetos e, em seguida, abro os projetos no Visual Studio Code usando o comando code.

E quanto ao código VS?

Instalando WSLextensões para desenvolvimento remoto em VS Code (VS Code Remote - WSL) é a última etapa que garante um trabalho confortável para o desenvolvedor. A extensão permite que o VS Code execute todas as suas operações (comandos git, consoles, instalação de extensões, etc.) interagindo diretamente com a máquina virtual Linux. Isso torna todo o processo muito autônomo.

No começo fiquei um pouco chateado por ter que instalar essa extensão porque precisava reinstalar o que havia instalado e configurado antes. Mas agora agradeço porque há uma camada de visualização especial que mostra em qual ambiente estou trabalhando e onde meus arquivos estão. Isso tornou o processo de desenvolvimento web do Windows mais transparente e muito mais fácil de usar a IU de controle de versão no VS Code.

Lágrimas de felicidade e esperança por um futuro brilhante

Não posso deixar de ficar animado com o próximo lançamento da atualização de maio de 2020 do Windows e com o subsistema Linux otimizado que está voando em meu poderoso PC para jogos. Pode haver alguns outros problemas que eu ainda não conheço, mas depois Insider Preview Concluí que a equipe WSL resolveu a maior parte dos problemas.

Além disso, não esqueça que Terminal do Windows bom também! Foi como se eles ouvissem minhas reclamações sobre a falta de guias, configurações JSON e a necessidade de “se sentir bem” no Windows. Ainda parece estranho, mas o Windows Terminal é talvez o melhor terminal para Windows.

Tendo trabalhado no Windows por 5 anos, já passei por muita coisa: não conseguir instalar o Rails, lutar com shells Cygwin artificiais. Eu tive um lugar na primeira fila na mesma conferência Build 2016, quando a Microsoft anunciou a primeira versão do WSL. E então comecei a esperar que o desenvolvimento web no Windows finalmente atingisse um novo nível. Sem dúvida, o WSL 2 é a maior melhoria que vi desde então e parece que estamos à beira de uma nova era.

Como a publicidade

Se o trabalho exigir Servidores Windows, então você definitivamente para nós — instalação automática do Windows Server 2012, 2016 ou 2019 em planos com 2 GB de RAM ou superior, a licença já está incluída no preço. Total a partir de 21 rublos por dia! Também temos servidores eternos 😉

Por que o WSL 2 é 13 vezes mais rápido que o WSL: impressões do Insider Preview

Fonte: habr.com

Adicionar um comentário