Microservices - qarax isku dhafan ee noocyada

Hello, Habr! Waxaan u soo bandhigay dareenkaaga tarjumaadda qoraaga ee maqaalka Microservices - Qarxinta Isku-dhafka ah ee Noocyada.
Microservices - qarax isku dhafan ee noocyada
Waqti ay dunidu IT-du si tartiib tartiib ah ugu sii socoto adeegaha yar yar iyo aaladaha sida Kubernetes, hal dhibaato oo keliya ayaa sii kordhaysa oo la dareemi karo. Dhibaatadan - qarax isku dhaf ah versions microservice. Weli, bulshada IT-gu waxay aaminsan tahay in xaaladda hadda jirta ay aad uga wanaagsan tahay "Naarta ku tiirsanaanta" jiilkii hore ee tignoolajiyada. Si kastaba ha ahaatee, versioning microservices waa dhibaato aad u adag. Mid ka mid ah caddaynta tani waxay noqon kartaa maqaallo sida "Ii soo celi kaligeyga".

Haddii aadan weli fahmin dhibaatada adigoo akhrinaya qoraalkan, aan sharaxo. Aynu nidhaahno alaabtaadu waxay ka kooban tahay 10 adeeg yar yar. Hadda aan ka soo qaadno in 1 nooc oo cusub loo sii daayay mid kasta oo ka mid ah adeegyadan yar yar. Kaliya 1 nooc - Waxaan rajeynayaa inaan dhammaanteen ku heshiin karno in tani ay tahay xaqiiqo aad u yar oo aan macno lahayn. Hadda, si kastaba ha ahaatee, aynu eegno kale ee alaabta our. Iyada oo kaliya hal nooc oo cusub oo qayb kasta ah, waxaan hadda haynaa 2 ^ 10 - ama 1024 permutations oo ah sida badeecadeena loo samayn karo.

Haddii ay weli jirto wax ismaandhaaf ah, aan kala gooyo xisaabta. Markaa waxaanu haynaa 10 adeeg oo yar yar, mid walbana wuxuu helayaa hal cusbooneysiin. Taasi waa, waxaan helnaa 2 nooc oo suurtagal ah adeeg kasta oo yar (mid hore ama mid cusub). Hadda, mid kasta oo ka mid ah qaybaha alaabta, waxaan isticmaali karnaa labadan nooc midkood. Xisaab ahaan, waxay la mid tahay haddii aan haysanay tiro laba-geesood ah oo ah 10 lambar. Tusaale ahaan, aynu nidhaahno 1 waa version cusub, iyo 0 waa version hore - markaas hal permutation suurto gal ah waxaa lagu tilmaami karaa sida 1001000000 - halkaas oo qaybaha 1aad iyo 4aad la cusboonaysiiyey, iyo kuwa kale oo dhan aan. Xisaabta waxaan ka ognahay in nambarka binary ee 10-god ah uu yeelan karo 2^10 ama 1024 qiimayaal. Yacni, waxaanu xaqiijinay miisaanka tirada aanu wax ka qabanayno.

Aan sii wadno caqli-galkeena - maxaa dhici doona haddii aan haysano 100 adeeg-yar oo mid kastaa leeyahay 10 nooc oo suurtagal ah? Xaaladda oo dhan waxay noqotaa mid aan fiicnayn - hadda waxaan haynaa 10 ^ 100 permutations - taas oo ah tiro aad u badan. Si kastaba ha ahaatee, waxaan doorbidayaa in aan xaaladdan ku calaamadiyo habkan, sababtoo ah hadda ma qarineyno ereyada sida "kubernetes", laakiin halkii ay dhibaatadu tahay sida ay tahay.

Waa maxay sababta aan aad ula dhacay dhibaatadan? Qayb ahaan sababtoo ah, markii hore looga soo shaqeeyay adduunka NLP iyo AI, waxaan ka wada hadalnay dhibaatada isku-dhafka qaraxa wax badan oo ku saabsan 5-6 sano ka hor. Keliya halkii versions waxaan lahaa erayo gaar ah, iyo halkii alaabta waxaan lahaa weedho iyo cutubyo. In kasta oo dhibaatooyinka NLP iyo AI ay weli yihiin kuwo aan la xallin, waa in la qiraa in horumar la taaban karo la sameeyay dhowrkii sano ee la soo dhaafay. (Aragtideyda, horumar waa la gaari karaaΠΎWay fiicnaan lahayd haddii dadka ku jira warshadaha ay bixiyaan feejignaan yar oo ku saabsan barashada mashiinka iyo in yar oo dheeraad ah farsamooyinka kale - laakiin tani mar horeba mawduuca ka baxsan).

Aan ku soo laabano aduunka DevOps iyo adeegaha yaryar Waxa na soo food saartay dhibaato aad u weyn, annagoo isu ekeyna sidii maroodi gudaha Kunstkamera - sababtoo ah waxa aan inta badan maqlo waa "kaliya qaado kubernetes iyo koofiyadda, wax walbana way fiicnaan doonaan!" Laakiin maya, wax walba ma hagaagayaan haddii wax walba sida ay yihiin loo daayo. Waxaa intaa dheer, xallinta falanqaynta ee dhibaatadan uma eka mid la aqbali karo sababtoo ah kakankeeda. Sida NLP, waa inaan marka hore u wajahnaa dhibaatadan annagoo yareynaya baaxadda raadinta - kiiskan, annagoo meesha ka saarayna wax-soo-saarka duugoobay.

Mid ka mid ah waxyaabaha ku caawin kara waa wax aan qoray sannadkii hore ku saabsan baahida loo qabo in la joogteeyo farqiga ugu yar ee u dhexeeya noocyada la dhejiyay macaamiisha. Waxa kale oo muhiim ah in la ogaado in habka CI/CD si fiican loo nashqadeeyay uu si weyn u caawiyo yaraynta kala duwanaanshaha. Si kastaba ha ahaatee, xaaladda hadda jirta ee arrimaha CI/CD kuma fiicna in lagu xalliyo dhibaatada is-daba-marineed iyada oo aan qalab dheeraad ah loo helin qaybaha xisaabinta iyo dabagalka.

Waxa aan u baahanahay waa nidaam tijaabo ah marxaladda isdhexgalka, halkaas oo aan ku ogaan karno khatarta khatarta ah ee qayb kasta, iyo sidoo kale in aan haysano hab toos ah oo loogu talagalay cusbooneysiinta qaybaha kala duwan iyo tijaabinta iyada oo aan faragelin hawlwadeen - si loo arko waxa shaqeeya iyo waxa aan samayn.

Nidaamkan tijaabada ah wuxuu u ekaan karaa sidan:

  1. Soo-saarayaashu waxay qoraan imtixaanno (tani waa marxalad xasaasi ah - sababtoo ah haddii kale ma lihin wax qiimeyn ah - waxay la mid tahay calaamadaynta xogta ee barashada mashiinka).
  2. Qayb kasta (mashruuc) waxay helaysaa nidaamkeeda CI - habkan hadda si wanaagsan ayaa loo horumariyay, iyo arrinta abuurista nidaamka CI ee hal qayb ayaa si weyn loo xaliyay.
  3. "Nidaamka isdhexgalka smart" wuxuu ururiyaa natiijooyinka nidaamyada CI ee kala duwan wuxuuna ururiyaa mashaariicda qaybaha ee alaabta ugu dambeysa, tijaabinta tijaabinta iyo ugu dambeyntii xisaabinta dariiqa ugu gaaban si loo helo shaqeynta alaabta la rabo iyadoo lagu saleynayo qaybaha hadda jira iyo khatarta khatarta ah. Haddii cusbooneysiintu aysan suurtagal ahayn, nidaamkani wuxuu ogeysiiyaa horumariyeyaasha qaybaha jira iyo kuwa iyaga ka mid ah oo keenaya qaladka. Mar labaad, nidaamka imtixaanku waa muhiim halkan - maadaama nidaamka isdhexgalka uu u isticmaalo imtixaannada sida qiimeynta qiimeynta.
  4. Nidaamka CD-ga, kaas oo markaa ka helaya xogta Nidaamka Isdhexgalka Smart oo si toos ah u sameeya cusbooneysiinta. Marxaladani waxay soo afjaraysaa wareegga.

Si aan u soo koobo, aniga mid ka mid ah dhibaatooyinka ugu waaweyn ee hadda jira ayaa ah la'aanta "Nidaamka Is-dhexgalka Smart" ee isku xira qaybaha kala duwan ee badeecada sidaas darteedna kuu ogolaanaya inaad la socoto sida guud ahaan alaabta la isugu keeno. Waxaan xiisayn doonaa fikradaha bulshada ee arrintan (qaswadayaasha - Waxaan hadda ka shaqeynayaa mashruuc Reliza, kaas oo noqon kara nidaamka isdhexgalka smart).

Mid ka mid ah waxa ugu dambeeya ee aan rabo in aan sheego waa aniga, aniga, monolith lama aqbali karo mashruuc kasta oo xitaa cabbir dhexdhexaad ah. Aniga ahaan, isku dayga lagu dedejinayo waqtiga fulinta iyo tayada horumarka ee ku soo noqoshada monolith waxay keenaysaa shaki weyn. Marka hore, monolith wuxuu leeyahay dhibaato la mid ah maareynta qaybaha - oo ka mid ah maktabadaha kala duwan ee uu ka kooban yahay, si kastaba ha ahaatee, waxaas oo dhan maaha mid la dareemo oo waxay muujinayaan ugu horreyntii wakhtiga ay ku qaataan horumarinta. Cawaaqibta mushkiladda keli-taliska ah waa suurtogalnimada macquulka ah ee isbeddelka koodka - iyo xawaare horumarineed oo aad u gaabis ah.

Adeegga yar-yar ayaa hagaajiya xaaladda, laakiin markaa naqshadaha adeegga-yaraha ayaa wajahaya dhibaatada qaraxa isku-dhafka ah ee marxaladda is-dhexgalka. Haa, guud ahaan, waxaan ka soo gudubnay isla dhibaatadii heerka horumarinta una gudubnay marxaladda isdhexgalka. Si kastaba ha ahaatee, fikradayda, habka microservices ayaa weli keenaya natiijooyin wanaagsan, kooxuhuna waxay ku gaadhaan natiijooyin degdeg ah (malaha inta badan sababtoo ah hoos u dhaca xajmiga qaybta horumarinta - ama cabbirka dufcadda). Si kastaba ha ahaatee, ka guurista monolith una guurto microservices ayaan wali wanaajin habka ku filan - qaraxa isku-dhafka ah ee noocyada adeeg-yaraha waa dhibaato weyn, waxaanan leenahay wax badan oo suurtagal ah si aan u wanaajino xaaladda marka aan xallineyno.

Source: www.habr.com

Add a comment