Doorashada qaabka qaab dhismeedka (qaybta 1)

Hello, habr. Diiwaangelinta koorsada cusub waxay hadda ka furan tahay OTUS "Software Architect". Habeenka bilowga koorsada, waxaan rabaa inaan kula wadaago maqaalkayga asalka ah.

Horudhac

Doorashada qaabka qaab-dhismeedka waa mid ka mid ah go'aamada farsamada aasaasiga ah marka la dhisayo nidaamka macluumaadka. Maqaalladan taxanaha ah, waxaan soo jeedinayaa in la falanqeeyo qaababka ugu caansan ee naqshadaha dhismaha ee loogu talagalay dhisidda codsiyada iyo ka jawaabista su'aasha ah goorta qaabka naqshadeynta ee la doorbidayo. Habka soo bandhigida, waxaan isku dayi doonaa inaan sawiro silsilad macquul ah oo sharxaysa horumarinta qaababka naqshadaha laga bilaabo monoliths ilaa microservices.

Tiro yar oo taariikh ah

Haddii aad isku daydo inaad waydiiso horumariyeyaasha: "Maxaynu ugu baahanahay adeeg-yaraha?", waxaad heli doontaa jawaabo kala duwan. Waxaad maqli doontaa in adeegyadu ay hagaajiyaan miisaanka, ka dhigaan koodhka si sahlan loo fahmi karo, hagaajinta dulqaadka qaladka, iyo mararka qaarkood waxaad maqli doontaa inay kuu ogolaanayaan inaad "nadiifiso koodkaaga." Aynu eegno taariikhda si aan u fahamno ujeedada ka dambeysa soo ifbaxa adeegyada yaryar.

Marka la soo koobo, adeegyadda yaryar ee fahamkeena hadda waxay u kacday sida soo socota: 2011, James Lewis, oo falanqeynaya shaqada shirkado kala duwan, wuxuu soo jiitay soo ifbaxa qaab cusub oo "micro-app", kaas oo wanaajisay SOA marka loo eego dardargelinta geynta adeegyada. Waxoogaa ka dib, 2012, shirweynihii dhismaha, nashqada waxa loo beddelay adeeg-yaraha. Markaa, yoolka hore ee soo-bandhigidda adeeg-yaraha ayaa ahaa in la horumariyo kuwa caanka ah waqtiga suuqa.

Adeegga yar-yar ayaa ku jiray mowjadda buunbuuninta ee 2015. Sida laga soo xigtay cilmi-baadhisyada qaarkood, ma jiro hal shir oo dhammaystiran iyada oo aan laga helin warbixin ku saabsan mawduuca adeegyada yaryar. Intaa waxaa dheer, shirarka qaarkood ayaa si gaar ah loogu talagalay adeegyada yaryar. Maalmahan, mashruucyo badan ayaa bilaabay isticmaalka qaabkan qaab dhismeedka, oo haddii mashruucu ka kooban yahay tiro badan oo kood ah, markaa u haajiridda adeegyada yaryar ayaa laga yaabaa in si firfircoon loo fuliyo.

In kasta oo ay jiraan dhammaan kuwan kor ku xusan, tiro yar oo horumariyayaal ah ayaa wali qeexi kara fikradda "adeegyada yar yar". Laakiin waxan ka hadli doonaa wax yar ka dib...

Monolith

Habka dhismaha ee ka soo horjeeda adeeg-yaraha waa monolith (ama dhammaan-in-mid). Waxay u badan tahay inaysan macno lahayn in la sheego waxa monolith yahay, markaa waxaan isla markiiba liis gareyn doonaa faa'iidooyinka qaabkan qaabdhismeedka, kaas oo bilaabay horumarinta dheeraadka ah ee qaababka qaabdhismeedka: cabbirka, isku xirnaanta, geynta, miisaanka, kalsoonida iyo adagaanta. Hoos waxaan soo jeedinayaa in aan mid kasta oo ka mid ah cilladaha si gaar ah u eego.

size

monolith waa mid aad u weyn. Waxayna inta badan la xidhiidhaa kayd aad u weyn. Codsigu waxa uu noqonayaa mid aad u weyn oo hal horumariye aanu gabi ahaanba fahmin. Kaliya kuwa waqti badan ku qaatay ka shaqeynta koodhkan ayaa si fiican ula shaqeyn kara monolith, halka kuwa bilowga ah ay waqti badan ku qaadan doonaan inay ogaadaan monolith mana jirto dammaanad ah inay ogaan doonaan. Caadi ahaan, marka aad la shaqaynayso monolith, had iyo jeer waxaa jira qaar ka mid ah "shuruudaha" sare oo si fiican u yaqaan monolith wax badan ama ka yar oo garaaca gacmaha horumariyeyaasha kale ee cusub sannad iyo badh gudahood. Sida caadiga ah, qofka waayeelka ah ee shuruudda leh waa hal dhibic oo guul darro ah, bixitaankiisuna wuxuu u horseedi karaa dhimashada monolith.

Isku xirnaanta

monolith waa "kubad weyn oo dhoobo ah", isbeddellada kuwaas oo keeni kara cawaaqib aan la saadaalin karin. Adiga oo isbedel ku sameeya hal meel, waxaad dhaawici kartaa monolith-ka mid kale (oo la mid ah "dhagtaa aad xoqday, * @ waa ka dhacday"). Tani waxay sabab u tahay xaqiiqda ah in qaybaha monolith ay leeyihiin kuwo aad u adag iyo, ugu muhiimsan, xiriir aan caddayn.

Howlgelinta

Gelitaanka monolith, xiriirka kakan ee ka dhexeeya qaybihiisa awgeed, waa geeddi-socod dheer oo leh caado u gaar ah. Caado-dhaqameedka noocan oo kale ah sida caadiga ah ma aha mid si buuxda loo jaan-gooyey waxaana lagu gudbiyaa "afka."

Miisaanka

Qaybaha Monolith waxa laga yaabaa inay lahaadaan baahiyo khayraad oo is khilaafaya, una baahan in tanaasul laga sameeyo dhinaca qalabka. Ka soo qaad in aad haysato hal-ku-dheg ka kooban adeegyada A iyo B. Adeegga A waxa uu dalbanayaa cabbirka darawalka adag, iyo adeegga B waxa uu dalbanayaa RAM. Xaaladdan oo kale, ama mishiinka uu monolith ku rakiban yahay waa inuu taageeraa shuruudaha labada adeeg, ama waa inaad gacanta ku dhejisaa mid ka mid ah adeegyada.

Tusaale kale (oo ka badan classic): adeegga A aad ayuu uga caansan yahay adeegga B, markaa waxaad doonaysaa inay jiraan 100 adeeg A, iyo 10 adeeg B. Mar labaad, laba ikhtiyaar: ama waxaan geynaa 100 monolith oo buuxa, ama qaar markaa adeegyada B waa in gacanta lagu curyaami doonaa.

Halaynta

Maadaama dhammaan adeegyadu ay wada yaalliin, haddii monolithku dhaco, markaa dhammaan adeegyadu waxay dhacaan hal mar. Dhab ahaantii, tani ma noqon karto mid aad u xun, ugu yaraan ma jiri doonto guul darrooyin qayb ah oo ku jira nidaamka qaybsan, laakiin dhinaca kale, sababtoo ah cillad ku jirta shaqeynta oo ay isticmaalaan 0.001% isticmaalayaasha, waxaad lumin kartaa dhammaan isticmaalayaasha. ee nidaamkaaga.

Inertia

Sababtoo ah xajmiga monolith, way adagtahay in loo beddelo tignoolajiyada cusub. Natiijo ahaan, sii haysashada isla waayeelkaas waa hawl gaar ah. Xirmada tignoolajiyada ee la doortay bilawga mashruuca waxay noqon kartaa xannibaad caqabad ku ah horumarinta alaabta.

gunaanad

Marka xigta waxaan ka hadli doonaa sida dadku isugu dayeen inay xalliyaan dhibaatooyinkan iyagoo u guuraya qaybaha iyo SOA.

Doorashada qaabka qaab dhismeedka (qaybta 1)

Akhri wax dheeraad ah:

Source: www.habr.com

Add a comment