Paano Nagsusukat ang Negosyo ng Docker upang Maglingkod sa Milyun-milyong Developer, Bahagi 2: Outbound na Data

Paano Nagsusukat ang Negosyo ng Docker upang Maglingkod sa Milyun-milyong Developer, Bahagi 2: Outbound na Data

Ito ang pangalawang artikulo sa isang serye ng mga artikulo na sasakupin ang mga limitasyon kapag nagda-download ng mga larawan ng lalagyan.

Π’ ang unang bahagi sinuri namin ang mga larawang nakaimbak sa Docker Hub, ang pinakamalaking registry ng mga larawan ng container. Isinulat namin ito para tulungan kang mas maunawaan kung paano makakaapekto ang aming na-update na Mga Tuntunin ng Serbisyo sa mga development team gamit ang Docker Hub upang pamahalaan ang mga imahe ng container at mga pipeline ng CICD.

Ang mga limitasyon sa dalas ng pag-download ay dati nang inihayag sa aming Mga Tuntunin ng Serbisyo. Mas malapitan naming tingnan ang mga limitasyon sa dalas na magkakabisa sa Nobyembre 1, 2020:

Libreng plan, mga hindi kilalang user: 100 download sa loob ng 6 na oras
Libreng plano, mga awtorisadong user: 200 download sa loob ng 6 na oras
Pro plan: walang limitasyon
Plano ng pangkat: walang limitasyon

Ang dalas ng pag-download ng Docker ay tinukoy bilang ang bilang ng mga manifest na kahilingan sa Docker Hub. Nakadepende ang mga limitasyon sa dalas ng pag-download ng larawan sa uri ng account na humihiling ng larawan, hindi sa uri ng account ng may-ari ng larawan. Para sa mga hindi kilalang (hindi awtorisadong) user, ang dalas ng pag-download ay nakatali sa ip-address.

NB Makakatanggap ka ng higit pang mga subtlety at pinakamahusay na mga kaso ng kasanayan sa kursong Docker mula sa mga practitioner. Bukod dito, maaari mong maranasan ito kapag ito ay maginhawa para sa iyo - kapwa sa oras at sa mood.

Nakakatanggap kami ng mga tanong mula sa mga customer at komunidad tungkol sa mga layer ng imahe ng container. Hindi namin isinasaalang-alang ang mga layer ng larawan kapag nililimitahan ang dalas ng pag-download, dahil nililimitahan namin ang mga manifest na pag-download, at ang bilang ng mga layer (mga kahilingan sa blob) ay kasalukuyang walang limitasyon. Ang pagbabagong ito ay batay sa feedback ng komunidad upang gawin itong mas madaling gamitin para sa mga user para hindi na kailangang magbilang ng mga layer sa bawat hitsura na kanilang ginagamit.

Detalyadong pagsusuri ng mga frequency ng pag-download ng imahe ng Docker Hub

Gumugol kami ng maraming oras sa pagsusuri sa pag-download ng mga imahe mula sa Docker Hub upang matukoy ang dahilan para sa limitasyon ng bilis, pati na rin kung paano ito malimitahan. Kinumpirma ng aming nakita na halos lahat ng mga user ay nagda-download ng mga larawan sa isang predictable rate para sa mga tipikal na daloy ng trabaho. Gayunpaman, mayroong isang kapansin-pansing impluwensya ng isang maliit na bilang ng mga hindi kilalang user, halimbawa, humigit-kumulang 30% ng lahat ng mga pag-download ay nagmumula lamang sa 1% ng mga hindi kilalang user.

Paano Nagsusukat ang Negosyo ng Docker upang Maglingkod sa Milyun-milyong Developer, Bahagi 2: Outbound na Data

Nakabatay ang mga bagong limitasyon sa pagsusuring ito, kaya hindi maaapektuhan ang karamihan sa aming mga user. Ang mga limitasyong ito ay ginawa upang ipakita ang normal na paggamit ng mga developer - pag-aaral ng Docker, pagbuo ng code, pagbuo ng mga imahe, at iba pa.

Pagtulong sa mga developer na mas maunawaan ang mga limitasyon sa dalas ng pag-download

Ngayon na naunawaan na namin ang epekto, at kung saan din dapat ang mga hangganan, kailangan naming tukuyin ang mga teknikal na kondisyon para sa pagpapatakbo ng mga paghihigpit na ito. Ang paghihigpit sa pag-download ng mga imahe mula sa Docker registry ay medyo mahirap. Hindi ka makakahanap ng API para sa mga pag-download sa paglalarawan ng registry - wala lang ito. Sa katunayan, ang pag-download ng larawan ay kumbinasyon ng mga manifest na kahilingan at blobs sa API, at iba ang pagpapatupad ng mga ito, depende sa estado ng ang kliyente at ang hiniling na larawan.

Halimbawa, kung mayroon ka nang larawan, maglalabas ang Docker Engine ng kahilingan para sa isang manifest, unawain na mayroon na itong lahat ng kinakailangang layer batay sa tinatanggap na manifest, at pagkatapos ay hihinto. Sa kabilang banda, kung nagda-download ka ng larawang sumusuporta sa maraming arkitektura, magbabalik ang isang kahilingan sa manifest ng isang listahan ng mga manifest ng larawan para sa bawat sinusuportahang arkitektura. Ang Docker Engine ay maglalabas ng isa pang manifest na kahilingan para sa partikular na arkitektura na pinapatakbo nito, bilang kapalit ay makakakuha ito ng isang listahan ng lahat ng mga layer sa imahe. Pagkatapos ay magtatanong ito para sa bawat nawawalang layer (blob).

NB Ang paksang ito ay mas malawak na sakop sa kursong Docker, kung saan susuriin namin ang lahat ng mga tool nito: mula sa mga pangunahing abstraction hanggang sa mga parameter ng network, ang mga nuances ng pagtatrabaho sa iba't ibang mga operating system at programming language. Makikilala mo ang teknolohiya at mauunawaan mo kung saan at kung paano pinakamahusay na gamitin ang Docker.

Lumalabas na ang pag-download ng larawan ay isa o dalawang manifest na kahilingan, gayundin mula sa zero hanggang infinity - mga kahilingan para sa mga layer (blob). Sa kasaysayan, sinusubaybayan ng Docker ang dalas ng pag-download sa isang layer-by-layer na batayan, dahil ito ay pinaka nauugnay sa paggamit ng bandwidth. Ngunit gayunpaman, nakinig kami sa komunidad, na mas mahirap, dahil kailangan mong subaybayan ang hiniling na bilang ng mga layer, na hahantong sa pagbalewala sa mga pinakamahuhusay na kagawian tungkol sa pagtatrabaho sa Dockerfile, at mas madaling maunawaan para sa mga user na nais lamang. magtrabaho kasama ang pagpapatala nang walang gaanong pag-unawa sa mga detalye.

Kaya nililimitahan namin ang bilang ng mga kahilingan batay sa mga manifest na kahilingan. Direktang nauugnay ito sa pag-download ng mga larawan, na madaling maunawaan ng mga user. Mayroon talagang isang maliit na nuance - kung susubukan mong mag-download ng isang imahe na mayroon na, ang kahilingan ay isasaalang-alang pa rin, kahit na hindi mo i-download ang mga layer. Sa anumang kaso, inaasahan namin na ang pamamaraang ito ng paglilimita sa dalas ng mga pag-download ay magiging patas at madaling gamitin.

Umaasa sa iyong feedback

Susubaybayan namin ang mga paghihigpit at gagawa kami ng mga naaangkop na pagsasaayos batay sa mga karaniwang kaso ng paggamit upang matiyak na naaangkop ang mga paghihigpit para sa bawat uri ng user, at lalo na, susubukan naming hindi kailanman pigilan ang mga developer na gawin ang kanilang trabaho.

Manatiling nakatutok sa mga darating na linggo para sa isa pang artikulo sa pagsasaayos ng CI at mga sistema ng labanan kaugnay ng mga pagbabagong ito.

Sa wakas, bilang bahagi ng aming suporta para sa open source na komunidad, magbibigay kami ng mga bagong plano sa pagpepresyo para sa open source hanggang ika-1 ng Nobyembre. Upang mag-apply, mangyaring punan ang form dito.

Para sa higit pang impormasyon tungkol sa mga pinakabagong pagbabago sa mga tuntunin ng serbisyo, pakibisita FAQ.

Para sa mga kailangang taasan ang kanilang mga limitasyon sa dalas ng pag-download ng larawan, nag-aalok ang Docker ng walang limitasyong pag-download ng larawan bilang isang tampok. Mga plano ng Pro o Team. Gaya ng nakasanayan, tinatanggap namin ang feedback at mga tanong. dito.

Pinagmulan: www.habr.com

Magdagdag ng komento