Mga Larawan ng Container ng Windows Server Ngayon 40 porsyento na Mas maliit

Sa simula ng Disyembre, inihayag ng Microsoft ang paparating na mga pagbabago sa mga imahe ng lalagyan ng Windows Server Core na gagawing 40% mas maliit. Sa isang magpaskil sa Blog .NET Blog, .NET Team Program Manager na si Richard Lander ay nagsabi na Ang mga imahe ng tagaloob ay 40% na mas maliit kaysa sa pinakabagong (naka-patched) na 1903 na mga imahe, batay sa mga imahe sa Windows Server Core insiders Docker repo. Bilang karagdagan, ang mga oras ng pagsisimula sa Windows PowerShell ay 30-45% nang mas mabilis. Sinabi ni Lander na ang mga pagpapabuti ay dapat mag-aplay sa anumang senaryo kung saan ginagamit ang mga imahe ng lalagyan ng Windows Server Core at magiging pinaka-kapaki-pakinabang para sa mga scaling apps, patuloy na pagsasama at patuloy na paghahatid (CI / CD), at iba pang mga sitwasyon kung saan ang mga imahe ay nakuha nang hindi gumagamit ng imahe ng Docker cache o kung saan kinakailangan ang mas mabilis na oras ng pagsisimula.

Paano Binawasan ng Microsoft ang Sukat ng Imahe ng 40 porsyento?

Ang mga imahe ng Windows Server Core ay nagsasama ng isang serye ng paunang nakaipon na .NET katutubong mga imahe na nabuo gamit ang isang tool na tinatawag na Ngen.exe upang mapagbuti ang pagsisimula ng pagganap. Ngunit ang pagbabagsak na ito ay gumagawa din ng laki ng imahe. Kasama na sa kasalukuyang mga imahe ng Insider Windows Server Core ang isang makabuluhang mas maliit na hanay ng mga imahe NGEN. Ang isang mas malaking hanay ng mga imahe ay kasama sa .NET Framework runtime na imahe, batay din sa Server Core, ngunit mas maliit din dahil tinitiyak ng Microsoft na may isang kopya lamang ng bawat imahe ng NGEN na nag-target sa pagganap ng ASP.NET at PowerShell.

Nagsimula ang mga pagsisiyasat sa Microsoft isang taon na ang nakalilipas batay sa saligan na ang paraan ng .NET Framework ay nakabalot at naka-install ay hindi gumana nang maayos sa mga layer ng Docker. Sa likod ng pananaliksik na ito, tinukoy ng Microsoft ang tatlong pamantayan upang mabawasan ang mga sukat ng imahe.

  1. Dapat mayroong isang kopya ng bawat file sa .NET Framework, sa lahat ng mga layer ng imahe ng lalagyan na inilathala ng Microsoft.
  2. Ang mga larawan ng NGEN na nilikha ng default ay dapat ihanay sa mga default na kaso ng paggamit.
  3. Panatilihin ang pagganap ng pagsisimula bilang laki ng imahe ng lalagyan ay nabawasan.

Ang pagbawas sa laki ng imahe at pagpapanatili ng pagganap ng pagsisimula ay ang pinakamalaking hamon dahil ang NGEN ang salarin para sa pagtaas ng laki ng imahe. Upang makamit ang mga layunin nito para sa layer ng imahe ng base ng Windows Server, ginawa ng Microsoft ang mga sumusunod na pagbabago:

  • May kasamang isang serbisyong kopya ng .NET Framework 4.8.
  • Tinanggal ang lahat ng mga imahe NGEN, maliban sa mscorlib.dll, System.dll at System.Core.dll (32-bit at 64-bit).

Sa layer ng imahe ng runtime ng NET Framework, ang mga pagbabago ay ang mga sumusunod:

  • Kasamang mga pagtitipon ng NGEN na ginamit ng Windows PowerShell at ASP.NET lamang.
  • Kasama lamang NGEN 64-bit na asamblea.

Ang mga imahe ay kasalukuyang magagamit para sa Mga tagaloob dito sa windows/ servercore / tagaloob repo ngunit dapat na magagamit sa pangkalahatan windows/ servercore repo kung kailan Windows 10 Ang 20H1 ay magagamit sa pangkalahatan sa unang kalahati ng 2020. Sinabi ng Microsoft na ang mga imahe ng lalagyan na nangangailangan ng pinakamahusay na pagganap para sa .NET Framework o Windows PowerShell ay dapat gamitin ang dotnet / balangkas / runtime repo. Habang ang mga imahe ay mas malaki, nag-aalok sila ng mas mahusay na pagganap.

Ang post Mga Larawan ng Container ng Windows Server Ngayon 40 porsyento na Mas maliit lumitaw ang unang sa Petri.

Mag-iwan ng komento