Ama-Microservices: Incazelo, izici nezinzuzo

Ngokuthuthuka kobuchwepheshe, ukudala kwe microservices, ukuze manje kunezindlela ezahlukahlukene zokusungula ukuthuthukiswa kohlelo lokusebenza ngezinsizakalo ezincane, le ndatshana ichaza izici zayo nokunye okuningi. Thola lapha

Ama-Microservices-2

Yini amaMicroservices?

Ama-Microservices aqukethe izinhlelo zokuthuthukisa izinhlelo zesoftware ethile kanye nohlelo ngokusebenzisa iqoqo lezinsizakalo ezibonakala njengezincane futhi ezingasetshenziswa ngokuqhubekayo. Kungenzeka ukukwenza ngezilimi ezahlukahlukene zokuhlela nasendaweni ethile.

Lona ukwakheka kwemicroservices Kukhulise ukusetshenziswa kwayo nentuthuko ngokuhamba kwesikhathi, ukuze ukwenziwa kwezicelo kukhulise ukusebenza kwayo, ukusebenza kwayo kahle kanye nokuzinza kwayo unyaka nonyaka esebenza, yingakho la maphrojekthi agcinwa ethuthuka njalo.

Ngenxa yezimpawu zayo ezithile, ingasetshenziswa ezindaweni ezahlukahlukene inqobo nje uma ihambisana nokuhambisana kwamabanga ebanzi amapulatifomu akhona ukuhlinzeka ngemisebenzi efanele ngokuya ngendlela yokwakhiwa kwemicroservices, lapho bezimele khona omunye nomunye kusukela banekhodi ethile.

Phakathi kwezingxenyekazi ezisetshenziswa kuzo lezi zinhlelo kukhona i-loT, kukhona nama-webs, kufaka phakathi ipulatifomu yeselula, okugqokekayo, phakathi kokunye. Lokhu kwenziwa ukuze kuqinisekiswe ukusebenza kunoma iyiphi idivayisi esetshenziswa amasistimu akhiqizwayo.

Ingadluliselwa nge-HTTP ngokuya ngokuthi isevisi iqhutshwa kanjani, kepha i-microservices ngayinye inendawo ethile lapho ingasebenza khona, okumele ibe ngolimi oluhlukile lohlelo kusuka kwamanye ama-microservices. Ingahluka ngosayizi wayo njengasezigabeni ezingaletha kuzinhlelo zokusebenza.

Ama-Microservices awakwazi ukuba nefomu elijwayelekile, ngakho-ke kungaba nzima ukuwakhomba ngokufanele, kepha, inemininingwane nezici ezenza kube lula ukuyiqonda noma ukuyikhomba. Le ndlela noma le ndlela yokwakha uhlelo iletha ithuluzi elinamasevisi amaningi azimele futhi angahlukaniswa noma ahlukaniswe ngokwesidingo.

Kungakho anesisekelo esenziwe izingcezu ezincane noma ezincane ukukhulisa noma ukwehlisa amathuluzi lapho kudingeka, ngesixhumanisi esisuka kwiseva eyodwa siye kwesinye siyintandokazi ezokhethwa ngumsebenzisi ngoba kuya ngesimo esitholakalayo kulezi zinhlelo .

Abathuthukisi balezi zinhlelo yibo abangakhetha izindlela zokuhlanganisa ezizosetshenziswa, ngokulandela umthetho olandelwayo ngamunye wokwenziwa kwesoftware noma uhlelo lokusebenza, yingakho kuncike kulowo nalowo wamakhono esingawethula okwamanje khetha ukujwayela uhlelo.

Ukwazi ukuthi ungalungiselela kanjani futhi uhlele kukhompyutha, uyamenywa ukuthi ufunde le ndaba Izinhlelo zekhompyutha, lapho kulandelana ukulandelana kwama-oda nezinyathelo ezizolandelwa, kanye nolimi lwabo nokuziphendukela kwemvelo

Izibonelo 

Ama-Microservices-3

Le ndlela yokwenza ama-microservices isetshenzisiwe ngenxa yenzuzo yayo enkulu yesondlo futhi ngaphezu kwakho konke ukuzinza kwayo, ngoba ngale ndlela kulula kakhulu, futhi iyashesha ukufeza inhloso ngokusebenza kahle okukhulu ngokuya ngezinhloso ezibekiwe.

Ngokuthuthukiswa kobuchwepheshe, kungabonakala ukuthi mangaki amapulatifomu asebenzisa ama-microservices ngenxa yezinzuzo zawo nokuthi aqhubeka nokuthuthuka nokuziphendukela kwemvelo. Kungakho ezinye zezinkampani ezethula lezi zinsizakalo ziboniswa ngezansi:

 Netflix

  • Kuyaziwa ukuthi kuyisiteji esinezakhiwo ezijwayelekile
  • Kubonakala ngokuthandwa kwayo okwandayo phakathi kwabasebenzisi emhlabeni jikelele
  • Inama-microservices wokufeza ukusebenza okufanele kwemikhiqizo abayinikezayo
  • Kubonakala ngokwethula inani elikhulu lamakholi ezinhlotsheni zalo eziningi zezinsizakalo
  • Kungabalwa futhi ukuthi yilo kuphela ipulatifomu elinethrafikhi yenethiwekhi cishe engama-30%
  • Inikeza amandla okufeza ukuguqulelwa kwezinhlobo zamadivayisi ezingaphezu kwezingu-800
  • Ukusebenza kwayo kokuhlangana kwenziwa nge-API yokusakaza yamavidiyo ahlukahlukene
  • Inikeza insizakalo enokuzinza okuhle okuyinzuzo yayo enkulu
  • Ifuna ukugcina ukuqhubeka kwenkonzo yayo yokudlulisa
  • Yenza izicelo ezahlukahlukene kumaseva ahlukahlukene

 Amazon 

  • Yipulatifomu enesakhiwo se-microservices
  • Ngokungafani neNetflix, ayinayo ikhono lokuxhasa inani elikhulu lamadivayisi
  • Kodwa-ke, lo mehluko awuthinti inhloso yesevisi yakho.
  • Fakela izicelo eziningi nsuku zonke
  • It has anhlobonhlobo izicelo
  • Nikeza insiza yewebhu nge-API
  • Basebenzisa futhi iwebhusayithi ye-Amazon ekusetshenzisweni kwezinsizakalo zabo
  • Insizakalo ngayinye iyatholakala ukuze amakhasimende akwazi ukufinyelela kalula kwimikhiqizo yawo ngaphandle kwezinkinga.

 Ebay 

  • Iyinkampani ebhekwa njengenye enombono wekusasa ngezinhloso eziphakeme
  • Yiyo eqale ukuguqulwa kobuchwepheshe njengoba kwenzeka kuDocker
  • Inhloso yawo ukuthi kube nezinsizakalo ezahlukahlukene ezizimele
  • Insizakalo ngayinye eyethulwayo yenziwa ngokuya ngendawo yayo ehambisanayo
  • Inezinsizakalo ezinganikezwa amaklayenti, ezisetshenziswa ngokuya ngomqondo othile ngamunye

Uma ufuna ukwazi ukuthi ngubani umqambi emakhasini ewebhu onikeza imininingwane kuseva ukuthi icutshungulwe, uyamenywa ukuthi ufunde i-athikili ye- Unjiniyela we-Front End, lapho kuchazwa khona ukusebenza kwayo kanye nezici ezibaluleke kakhulu

Ukwakhiwa kweMicroservices

Ama-Microservices-4

Ukwakhiwa kwemicroservices kuyaziwa ukuthi kunezici ezithile ezivumela izinzuzo nezinzuzo kuhlelo ngalunye lwazo. Kodwa-ke, ukuze uqonde kahle ukuthi kususelwa kuphi, kubalulekile ukuqonda ukwakheka kwe-monolithic obe umehluko wayo, okungukuthi, olunye uhlobo lwezakhiwo.

Endabeni yokwakhiwa kwe-monolithic, kuyindlela ebhekele ukuthuthukisa iyunithi, kulokhu eyodwa kuphela ngaphandle kwengxenye etholakala isebenza ngaphandle, lapho iklayenti lisebenzisa khona emkhakheni we-server nasembonini ye-monolith. umsebenzi wokwenza izicelo ze-HTTP ezenziwe ukuze ithole futhi ngasikhathi sinye ube nethuba lokuvuselela i-database.

Endabeni yale ndlela yokusetshenziswa kwezicelo ze-monolithic, iveza ezinye izingqinamba futhi kungenxa yokwahluka okuqhubekayo okwenziwa kufane nomjikelezo, lapho kuxhunyaniswa khona ukuze kuthi lapho kwenziwa noma yiluphi ushintsho engxenyeni yohlelo lokusebenza kukhiqize ukuvuselelwa kohlelo lokuthola inguqulo ehlukile kunaleyo edaliwe.

Ngale ndlela, kukhona izindleko ezithile zezinsizakusebenza ezitholakalayo, yonke le nqubo ihluke ngokuphelele ekwakhiweni kwemicroservices njengoba lokhu kungaxhunyanisiwe, kuvumela inguqulo yomkhiqizo odaliwe ukuthi igcinwe uma kwenzeka kuba nokuhlukahluka okuthile.

Inika ithuba lokuthuthukisa imikhakha ehlukene futhi ezimisele, ngoba kuphrojekthi kungenzeka ukufeza ukuguqulwa okudingekayo okutholakala ngale ndlela yokuthuthukisa, kunikeze izinzuzo namandla okudala iphrojekthi ethile.

Izici zesoftware yeMicroservices

Image

Ama-microservices enziwa ngokuzimela yizicelo ezenziwe ku-API nge-HTTP, ngale ndlela ukusebenza ngempumelelo okukhulu komkhiqizo kutholakala ngokugcina ukuxhumana ndawonye, ​​kunika ithuba lokubhala ikhodi ngayinye ngolimi oluthile lohlelo lokusebenza.

Lezi zici yizo ezibonisa izinzuzo ezinkulu nezinzuzo ezitholakale ngalobu buciko, okuyisizathu sokwanda kokusebenza kwakho. Kungakho izici eziyinhloko ezigqama kuma-microservices avumela imisebenzi yazo ngokusebenza kahle ziboniswa ngezansi:

  • Inethuba lokuhlukaniswa ngemisebenzi eyahlukahlukene enemisebenzi eyenziwa ngokuzimela
  • Insizakalo ngayinye ingasatshalaliswa ngaphandle kokushintsha noma yimuphi omunye umsebenzi oxhunyiwe
  • Ingaguqulwa futhi, iguqulwe futhi iguqulwe ngaphandle kokwenza inguqulo entsha yohlelo lokusebenza
  • Akuhambisani nemisebenzi ehlukahlukene eyakha isoftware noma uhlelo lokusebenza
  • Inikeza indawo ukuvumela ushintsho olwenziwe kuhlelo lokusebenza ngaphandle kwesidingo sokushintsha uhlelo noma isisekelo sesoftware
  • Ifuna ukwanelisa izidingo zeklayenti ngokuya ngamakhono namakhono abo
  • Kususelwa ekuhlelweni kohlelo ngokuya ngokubaluleka kweklayenti
  • Ivumela ukusebenzisa imininingwane edingekayo ebhizinisini lohlelo noma njengoba kufunwa iklayenti
  • Ihlukile endaweni ye-monolithic
  • Idivayisi ngayinye nekhompyutha ngayinye yenza umsebenzi othize ukuze isebenzise imisebenzi ehlukahlukene kusoftware
  • Shintsha imodyuli ejwayelekile ukusungula insizakalo ethile
  • Inikeza isevisi ethile ngokuya ngesidingo sekhasimende
  • Inika ithuba lokonga isikhathi esithe xaxa ekwakhiweni kwesicelo
  • Ukuqashwa kwesheduli yohlelo lokusebenza kungenziwa
  • Ivumela ukubuyekezwa kwamamojula asetshenzisiwe
  • Akubangeli ukuphazamiseka ekusebenzeni kwesoftware kumadivayisi
  • Inikeza induduzo enkulu nokukhululeka lapho usebenzisa isoftware
  • Ifana nohlelo olusetshenziswa yi-UNIX
  • Inamaphuzu athile abhekwa njengabahlakaniphileyo ukuthi bakwazi ukucubungula yonke imininingwane nolwazi oludluliswayo
  • Sebenzisa umqondo wokuthi umakhi asebenzise kuhlelo
  • Ibeka ukuthi imodyuli ngayinye ine-database ethile
  • Uma kwenzeka ukuthi isicelo sithole isicelo esikhulu, sinohlelo oluvumela ukugwema ukwehluleka kwesoftware nokuthi unenketho yokuguqula isicelo ngasinye

Ubuhle nobubi 

Image

Ama-Microservices agqama ngezinzuzo ezinkulu azinikezayo, kepha futhi anokunye ukungalungi okukuvezayo ekwakhiweni nasekusungulweni kohlelo kuhlelo lokusebenza, yingakho okulandelayo kukhombisa ukuthi yiziphi izinzuzo nezinkinga ezingaletha:

Izinzuzo

  • Inika ithuba kubathuthukisi ukuphoqelela imigomo yabo nokusungulwa kuhlelo lokusebenza
  • Isoftware ingasethwa ngokuzimela nangokuzimela
  • Kukhona nenkululeko enkulu ekuthuthukisweni kohlelo
  • Ngesikhathi sentuthuko, umsebenzi osetshenzisiwe ungaba mncane, ngaleyo ndlela unikeze induduzo enkulu ohlelweni
  • Isebenzisa izilimi ezahlukahlukene zokuhlela
  • Ivumela ukuhlanganiswa okulula
  • Ingasatshalaliswa ngendlela elula
  • Yehlisa izinkinga ekukhuleni kwayo
  • Kuyazenzakalela
  • Ingaguqulwa kalula
  • Imodyuli ngayinye isebenzisa ulimi oluthile lokuhlela
  • Intuthuko ingenziwa ngokushesha
  • Ivumela ukusetshenziswa kobuchwepheshe besimanje nobusesikhathini
  • Inikeza ukuthunyelwa kwesicelo ngejubane elikhulu
  • Akuthinti ukusebenza kwamanye amamojula asetshenziswe ngokukhiqiza noma yikuphi ukuguqulwa kuhlelo lokusebenza
  • Inokusebenza okumodemu
  • Ingahlanganiswa nezinye izinhlelo zokusebenza kalula
  • Ungakala ekwakhiweni kwesicelo ngaphandle kwezinkinga

Image

nebubi

  • Yethula inkinga lapho kuhlolwa uhlelo
  • Njengoba ithunyelwe ngokuhanjiswa, ubunzima buyanda ngesikhathi sokuhlolwa
  • Kwakha ukwanda kwamabhulokhi wedatha ngokwandisa inani lezinsizakalo ezisunguliwe
  • Ngokwandisa insizakalo, kufanele kube nenani elikhulu lokuhlelwa kwamabhulokhi wolwazi kanye nabaphathi bawo
  • Ngokuya ngokuthi uhlelo lusungulwa kanjani, umsebenzi omningi kufanele wenziwe nge-latency eyenzeka kunethiwekhi
  • Umthuthukisi ngamunye uphethe ukuxazulula noma ikuphi ukwehluleka okungenziwa kuhlelo lokusebenza
  • Inezinkinga ngesikhathi sokulinganisa umthwalo
  • Inani elilinganiselwe lamafomethi uhlelo lokusebenza olungazamukela kumele lisungulwe
  • Inika umsebenzi omningi lapho usebenzisa uhlelo
  • Ukuhlanganiswa kwezinsizakalo kungaba nzima ngokwandisa inani