Ukukhetha isitayela sezakhiwo (ingxenye 2)

Sawubona, Habr. Namuhla ngiqhubeka nochungechunge lwezincwadi engizibhalele ngqo ukuqala kochungechunge olusha lwezifundo. "I-Software Architect".

Isingeniso

Ukukhethwa kwesitayela sezakhiwo kungenye yezinqumo eziyisisekelo zobuchwepheshe lapho kwakhiwa uhlelo lolwazi. Kulolu chungechunge lwama-athikili, ngiphakamisa ukuhlaziya izitayela zezakhiwo ezidume kakhulu zezinhlelo zokusebenza zokwakha futhi ngiphendule umbuzo wokuthi yisiphi isitayela sezakhiwo esithandeka kakhulu. Enkambweni yokwethula, ngizozama ukudweba uchungechunge olunengqondo oluchaza ukuthuthukiswa kwezitayela zezakhiwo kusuka ku-monoliths kuya kuma-microservices.

Π’ isikhathi sokugcina sibhekane ne-monolith futhi safinyelela esiphethweni sokuthi i-monolith inenani lezinkinga: ubukhulu, ukuxhumeka, ukuthunyelwa, ukulinganisa, ukwethembeka kanye nokuqina.

Kulokhu ngiphakamisa ukukhuluma ngamathuba okuhlela uhlelo njengesethi yamamojula/imitapo yolwazi (isakhiwo esigxile engxenyeni) noma izinsiza (izakhiwo ezigxile kusevisi).

I-architecture egxile engxenyeni

Izakhiwo ezigxile ezingxenyeni ezithile zihlanganisa ukwenza isistimu njengesethi yezingxenye ezingasetshenziswa kumaphrojekthi wamanje nawesikhathi esizayo. Lapho kuhlukaniswa isistimu ibe izingxenye, okulandelayo kuyacatshangelwa: ukusebenziseka kabusha kwazo, ukushintshwa kwazo, ukuzimela komongo, ukunwebeka, ukuhlanganisa kanye nokuzimela.

Ngokusetshenziswa kahle kwezingxenye, inkinga "yebhola elikhulu lokungcola" (usayizi omkhulu + ukuhlanganisa okuphezulu) ixazululwa, futhi izingxenye ngokwazo zingaba kokubili amayunithi omhlangano (amamojula, amalabhulali) kanye namayunithi okuthunyelwa (izinsizakalo). Amayunithi okusatshalaliswa awahlali enziwe imephu enqubeni esebenzayo: isibonelo, uhlelo lokusebenza lwewebhu kanye nesizindalwazi kusetshenziswa ndawonye.

Imvamisa, ama-monoliths athuthukiswa njengesethi yamamojula. Le ndlela iholela ekuthuthukisweni okuzimele, kodwa izinkinga zokukala okuzimele nokuthunyelwa, ukubekezelelana kwamaphutha nokuzimela kusukela kunqwaba yobuchwepheshe bonkana zihlala zikhona. Yingakho imojuli iyingxenye ezimele kancane.

Inkinga enkulu nge-monolith enjalo ukuthi ukuhlukaniswa kwamamojula kunengqondo futhi kungaphulwa kalula ngabathuthukisi. Imodyuli eyinhloko ingase ivele, ephenduka kancane kancane ibe yindawo yokulahla udoti, igrafu yokuncika phakathi kwamamojula ingase ikhule, njalonjalo. Ukuze ugweme izinkinga ezinjalo, ukuthuthukiswa kufanele kwenziwe noma yiqembu elivuthiwe kakhulu, noma ngaphansi kokuqondisa "komakhi" obambe iqhaza ekubuyekezweni kwekhodi yesikhathi esigcwele futhi eshaya izandla zabathuthukisi abaphula isakhiwo esinengqondo.

I-monolith "ekahle" isethi yamamojula ahlukaniswe ngokunengqondo, ngalinye libheka kusizindalwazi salo.

I-architecture egxile kwisevisi

Uma uhlelo kufanele luhlelwe ngendlela yesethi yezinsizakalo, khona-ke sikhuluma ngesakhiwo esigxile kwisevisi. Izimiso zayo ukusebenzisana kwezinhlelo zokusebenza ezigxile kumsebenzisi, ukusetshenziswa kabusha kwesevisi yebhizinisi, ukuzimela kwesitaki sobuchwepheshe, nokuzimela (ukuziphendukela kwemvelo okuzimele, ukunwetshwa, nokusetshenziswa).

I-architecture egxile kwisevisi (i-SOA = i-architecture egxile kwisevisi) ixazulula zonke izinkinga ezikhonjiwe ze-monolith: isevisi eyodwa kuphela ethintekayo lapho kwenzeka ushintsho, futhi i-API echazwe kahle isekela ukuhlanganisa okuhle kwezingxenye.

Kodwa akuyona yonke into ebushelelezi: I-SOA idala izinkinga ezintsha. Izingcingo eziqhelile zibiza kakhulu kunezasendaweni, futhi ukusabalalisa kabusha izibopho phakathi kwezingxenye sekubize kakhulu.

Ngendlela, ukuthi kungenzeka ukuthunyelwa okuzimele kuyisici esibaluleke kakhulu senkonzo. Uma izinsiza kufanele zisetshenziswe ndawonye noma, ngaphezu kwalokho, ngokulandelana okuthile, uhlelo alukwazi ukubhekwa njengolugxile kwisevisi. Kulokhu, bakhuluma nge-monolith esabalalisiwe (ibhekwa njenge-anti-pattern hhayi nje ngombono we-SOA, kodwa futhi kusukela ekubukeni kwe-microservice architecture).

I-architecture egxile kwisevisi isekelwa kahle umphakathi wezakhiwo kanye nabathengisi. Lokhu kusho ukuba khona kwezifundo eziningi nezitifiketi, amaphethini athuthukiswe kahle. Lesi sakamuva sihlanganisa, isibonelo, ibhasi lesevisi yebhizinisi elaziwayo (ESB = ibhasi lesevisi yebhizinisi). Ngesikhathi esifanayo, i-ESB iwumthwalo ovela kubathengisi; akudingekile ukuthi isetshenziswe ku-SOA.

Ukuduma kwezakhiwo ezigxile ezinsizeni kwafinyelela umvuthwandaba cishe ngo-2008, okwathi ngemva kwalokho kwaqala ukwehla, okwaba kumangalisa kakhulu ngemva kokuvela kwama-microservices (~2015).

isiphetho

Ngemva kokuba sesixoxile ngamathuba okuhlela izinhlelo zolwazi ngendlela yezinsizakalo namamojula, ngiphakamisa ukuthi ekugcineni ngidlulele ezimisweni ze-microservice architecture futhi nginake ngokukhethekile umehluko phakathi kwe-microservice architecture kanye ne-architecture egxile kwisevisi engxenyeni elandelayo.

Ukukhetha isitayela sezakhiwo (ingxenye 2)

Source: www.habr.com

Engeza amazwana