Ukuhlola iMicroservices - Umhlahlandlela Wabaqalayo

Ukuhlola iMicroservices sekuya ngokuya kubaluleke kakhulu njengoba izinhlelo eziningi ezintsha zakhiwa kusetshenziswa ukwakheka kweMicroservices.

Ngaphambi kokuthi sikwazi ukubona ukuthi singahlola kanjani ama-microservices, okokuqala sidinga ukuqonda ukuthi ayini.



Yini ama-Microservices?

IMicroservice ichazwa njengesitayela sokwakha, indlela yokwakha uhlelo olulodwa njengohlu lwezinsizakalo. Isevisi ngayinye ichazwa ngezici zayo ezinye zazo okuyilezi:


  • Iyasebenza kunqubo yayo.
  • Ukuxhumana nomshini osindayo kaningi nge-API yezinsiza ze-HTTP.
  • Ngokuzimela kusetshenziswa imishini ezenzakalelayo ngokuphelele.
  • Kusetshenziswa izilimi ezahlukahlukene / ubuchwepheshe / i-DB.
  • Usebenzisa ubuchwepheshe obuhlukile bokugcina idatha.

Isitayela sokwakha se-microservice sifaka phakathi ukuthuthukisa izinhlelo zokusebenza ezingasebenza ndawonye njengesixhumi sezinsizakalo ezincane, ngasinye sisebenza ngenqubo yaso ngazinye futhi sixhumana nezinqubo ezingasindi ezifana ne-HTTP resource API. Lezi zinsizakalo zidinga ukuphathwa okuphakathi okungenalutho, ukusebenzisa ubuchwepheshe bokugcina idatha obuhlukile, futhi kungabhalwa ngezilimi ezahlukahlukene zokuhlela. Lezi zinsizakalo, ezakhiwe ngamakhono ebhizinisi, nazo zingasetshenziswa ngokuzimela ngemishini esekela ukuthunyelwa okuzenzakalelayo ngokuphelele.

Izici zeMicroservices:


  • Ihlelwe ngamakhono ebhizinisi,
  • Ukuthunyelwa okuzenzakalelayo,
  • Ukukhalipha ezindaweni zokugcina kunasebhasi yesevisi,
  • Ukulawulwa okuhlukanisiwe kwezilimi nedatha.


Ahluke Kanjani Ama-Microservices ku-SOA

  • Izakhiwo ezenzelwe isevisi (SOA): iphethini yokwakha ekwakhiweni kwesoftware yekhompyutha lapho izingxenye zohlelo zinikezela ngezinsizakalo kwezinye izinto ngephrothokholi yezokuxhumana, imvamisa ngenethiwekhi.
  • Imicroservices Isitayela sokwakhiwa kwesoftware lapho izinhlelo eziyinkimbinkimbi zakhiwa khona ngezinqubo ezincane, ezizimele ezixhumana zodwa zisebenzisa ama-API olimi-agnostic

Isibonelo:

Uma i-Uber yakhiwe nge-SOA, izinsizakalo zayo zingaba:

  • I-GetPaymentsAndDriverInformationAndMappingDataAPI
  • I-AuthenticateUsersAndDriversAPI

Uma i-Uber yakhiwe ngama-microservices, ama-API awo angahle afane:

  • Thumela IzinkokheloService
  • I-GetDriverInfoService
  • I-GetMappingDataService
  • I-AuthenticateUserService
  • I-AuthenticateDriverService

Ama-API amaningi, amasethi amancane wemithwalo yemfanelo.




Uyihlola kanjani iMicroservices

Ukuhlolwa Kwezinyunithi

Ukuhlolwa kweyunithi kusebenzisa izingcezu zesoftware ezinjengomsebenzi kuhlelo lokusebenza ukuthola ukuthi ngabe zikhiqiza yini umphumela ofunayo onikezwe isethi yokufakwayo okwaziwayo.

Kuyaphawuleka ukuthi ukuhlolwa kweyunithi kuphela akunikezi iziqinisekiso mayelana nokuziphatha kohlelo. Sidinga ezinye izinhlobo zokuhlolela ama-microservices.

Uvivinyo Lwezinto

Lapho sesenze ukuhlolwa kwamayunithi kuyo yonke imisebenzi ngaphakathi kwensiza encane, lapho-ke sidinga ukuhlola imicroservice uqobo lodwa.

Ngokuvamile, uhlelo lokusebenza lungahlanganiswa nemicroservices eningi, ngakho-ke ukuze sihlole sodwa, sidinga ukuhlekisa ngamanye ama-microservices.


Ukuhlolwa kwento kuzophinda kuvivinye ukusebenzisana kwe-microservice nokuncika kwayo njenge-database, konke njengeyunithi eyodwa.

Ukuhlolwa Kokuhlanganisa

Ngemuva kokuthi sikuqinisekisile ukusebenza kwe-microservice ngayinye, lapho-ke sidinga ukuhlola ukuxhumana kwangaphakathi kwensizakalo. Isivivinyo sokuhlanganiswa siqinisekisa izindlela zokuxhumana nokuxhumana phakathi kwezingxenye ukuthola ukukhubazeka kwesixhumi esibonakalayo

Izingcingo zezinsizakalo kufanele zenziwe ngokuhlanganiswa nezinsizakalo zangaphandle, okufanele zifake amaphutha kanye namacala okuphumelela, ngakho-ke, ukuhlolwa kokuhlanganiswa kuqinisekisa ukuthi uhlelo lusebenza ndawonye ngaphandle komthungo nokuthi ukuncika phakathi kwezinsizakalo kukhona njengoba kulindelwe.

Ukuhlolwa Kwenkontileka

Ukuhlolwa kwenkontileka kuqinisekisa ukusebenzisana emngceleni wensizakalo yangaphandle kugomela ukuthi ihlangabezana nenkontileka elindelwe yinsizakalo edlayo.


Lolu hlobo lokuhlola kufanele luphathe insizakalo ngayinye njengebhokisi elimnyama futhi zonke izinsizakalo kufanele zibizwe ngokuzimela futhi izimpendulo zazo kufanele ziqinisekiswe.

“Inkontileka” yindlela ikholi yesevisi (lapho kulindeleke umphumela othile noma okukhiphayo kokufakwayo okuthile) okushiwo ngayo ngokuhlolwa kwenkontileka yomthengi. Wonke umthengi kufanele athole imiphumela efanayo kusuka kusevisi ngokuhamba kwesikhathi, noma ngabe insizakalo iyashintsha. Kufanele kube nokuguquguquka kokwengeza ukusebenza okwengeziwe njengoba kudingeka Ezimpendulo kamuva. Noma kunjalo, lezi zengezo akumele zephule ukusebenza kwensiza.

Izivivinyo Zokuqeda Ukuphela

Indima yezivivinyo zokuphela kokuphela ukuqinisekisa ukuthi yonke into iyahlangana futhi akukho ukungaboni ngaso linye okuphezulu phakathi kwemicroservices.

Ukuhlolwa kokuphela kokugcina kuqinisekisa ukuthi uhlelo luhlangabezana nezidingo zangaphandle futhi lufeza izinhloso zalo, luhlola lonke uhlelo, kusukela ekugcineni kuye ekugcineni.


Ukuhlolwa futhi kuqinisekisa ukuthi yonke inqubo nokugeleza komsebenzisi kusebenza kahle, kufaka phakathi yonke insizakalo nokuhlanganiswa kwe-DB. Ukuhlolwa okuphelele kokusebenza okuthinta izinsizakalo eziningi kuqinisekisa ukuthi uhlelo lusebenza ngokubambisana luphelele futhi lwanelisa zonke izidingo.



Isibonelo Sokuhlola Imicroservices

Ake sithathe i-microservice TO lokho kuncike kwezinye izinsizakalo ezimbili B & C . Udinga ukusungula indawo engayodwa lapho izwe lase TO , B futhi C ichazwe kahle futhi ingasethwa kaninginingi.

Isibonelo, isimo / ukugcinwa kwe- B futhi C kufanele yenziwe kuqala. Ngemuva kwalokho, umane usebenzise isethi yama-API wokuhlola wokuhlola we-microservice TO kusetshenziswa isethi ejwayelekile ye-REST / WebService yamathuluzi wokuhlola, isb. INSIPHO noma Chakram noma enye indlela elula ye-xUnit yolimi lwakho lohlelo.

Bhuqa noma yiziphi izinsizakalo zontanga i-API encike ekusebenziseni i-restito. Ezinye izindlela zifaka phakathi i-rest-driver, i-WireMock, ne-Mochito.

Inselelo esobala ama-API enkampani yangaphandle ahlekisa / enza inkohliso lapho enza ukuhlolwa kokuhlanganiswa kwemicroservices. Ungasebenzisa noma yimaphi amathuluzi okuhlekisa okukhulunywe ngawo ngenhla, vele uphathe ukuhlekwa usulu njengengxenye yohlelo lwethu lokuhlola futhi uqiniseke ukuthi usesikhathini ngokukhishwa okusha kwe-API.