Ho khetha mokhoa oa ho aha (karolo ea 3)

Lumela, Habr. Kajeno ke tsoela pele letoto la likhatiso tseo ke li ngotseng ka ho khetheha bakeng sa ho qala mokhoa o mocha oa thupelo. "Software Architect".

Selelekela

Khetho ea setaele sa meralo ke e 'ngoe ea liqeto tsa mantlha tsa tekheniki ha u theha sistimi ea tlhahisoleseling. Letotong lena la lingoloa, ke sisinya ho sekaseka mekhoa ea meralo e tsebahalang haholo bakeng sa lits'ebetso tsa moaho le ho araba potso ea hore na ke setaele sefe sa meralo se ratoang haholo. Ha ke ntse ke fana ka tlhahiso, ke tla leka ho hula ketane e utloahalang e hlalosang tsoelo-pele ea mekhoa ea meralo ho tloha monoliths ho ea ho microservices.

Lekhetlong la ho qetela re buile ka mefuta e fapaneng ea monoliths le tšebeliso ea likarolo ho li haha, ka bobeli li haha ​​​​lisebelisoa le likarolo tsa ho tsamaisa. Re utloisisa meralo e shebaneng le litšebeletso.

Joale re tla qetella re hlalosa litšobotsi tsa mantlha tsa meralo ea microservice.

Kamano ea meralo

Hoa hlokahala ho utloisisa hore ho latela litlhaloso tse fanoeng lingoloeng tse fetileng, ts'ebeletso efe kapa efe ke karolo, empa ha se ts'ebeletso e ngoe le e ngoe eo e leng microservice.

Litšobotsi tsa Microservice Architecture

Litšobotsi tse ka sehloohong tsa meralo ea microservice ke:

  • E hlophisitsoeng ho potoloha Bokhoni ba Khoebo
  • Lihlahisoa eseng Merero
  • Li-endpoints tse bohlale le liphaephe tse sa bueng
  • Decentralized Governance
  • Decentralized Data Management
  • Infrastructure Automation
  • Moralo bakeng sa ho hloleha
  • Meaho e nang le nts'etsopele ea ho iphetola ha lintho (Evolutionary Design)

Ntlha ea 1 e tsoa ho meaho e shebaneng le lits'ebeletso hobane li-microservices ke boemo bo ikhethileng ba lits'ebeletso. Lintlha tse ling li hloka ho nahanoa ka thoko.

E hlophisitsoeng ho potoloha Bokhoni ba Khoebo

Joale hoa hlokahala ho hopola molao oa Conway: mekhatlo e etsang litsamaiso e hlophisa meralo ea eona, e kopitsa sebopeho sa tšebelisano ka har'a mekhatlo ena. E le mohlala, re ka hopola taba ea ho theha moqapi: sehlopha sa batho ba supileng se ile sa etsa moqapi oa li-pass tse supileng, 'me sehlopha sa ba bahlano se ile sa hlahisa moqapi oa li-pass tse hlano.

Haeba re bua ka monoliths le microservices, joale haeba tsoelo-pele e hlophisitsoe ke mafapha a sebetsang (backend, frontend, batsamaisi ba database), joale re fumana monolith ea khale.

Ho fumana li-microservices, lihlopha li tlameha ho hlophisoa ka bokhoni ba khoebo (liodara, thomello, sehlopha sa lethathamo la libuka). Mokhatlo ona o tla lumella lihlopha ho tsepamisa maikutlo ho aheng likarolo tse itseng tsa kopo.

Lihlahisoa eseng Merero

Mokhoa oa morero oo sehlopha se fetisetsang ts'ebetso e tsoetseng pele ho lihlopha tse ling ha o tšoanelehe ka ho feletseng tabeng ea meralo ea microservice. Sehlopha se tlameha ho tšehetsa tsamaiso nakong eohle ea bophelo ba eona. Amazon, e mong oa baetapele ba ts'ebetsong ea li-microservices, o itse: "Ua haha, ua e tsamaisa." Mokhoa oa sehlahisoa o lumella sehlopha ho utloa litlhoko tsa khoebo.

Li-endpoints tse bohlale le liphaephe tse sa bueng

Mehaho ea SOA e ile ea lebisa tlhokomelo e kholo ho mecha ea puisano, haholo-holo Enterprise Service Bus. E leng hangata e lebisang ho Erroneous Spaghetti Box, ke hore, ho rarahana ha monolith ho fetoha ho rarahana ha likamano pakeng tsa litšebeletso. Mehaho ea Microservice e sebelisa mekhoa e bonolo feela ea puisano.

Decentralized Governance

Liqeto tsa bohlokoa mabapi le li-microservices li lokela ho etsoa ke batho ba hlileng ba hlahisang li-microservices. Mona, liqeto tsa bohlokoa li bolela khetho
lipuo tsa mananeo, mokhoa oa ho tsamaisa, likonteraka tsa sechaba, joalo-joalo.

Decentralized Data Management

Mokhoa o tloaelehileng, oo kopo e itšetlehileng ka database e le 'ngoe, e ke ke ea ela hloko lintlha tse tobileng tsa tšebeletso e' ngoe le e 'ngoe e khethehileng. MSA e kenyelletsa taolo ea data e arolelitsoeng, ho kenyeletsoa ts'ebeliso ea mahlale a fapaneng.

Infrastructure Automation

MSA e ts'ehetsa lits'ebetso tse tsoelang pele tsa thomello le phano. Sena se ka finyelloa feela ka mekhoa ea ho iketsetsa. Ka nako e ts'oanang, ho tsamaisa palo e kholo ea litšebeletso ha ho sa shebahale eka ke ntho e tšosang. Mokhoa oa ho tsamaisa o lokela ho ba o tenang. Ntlha ea bobeli e amana le tsamaiso ea litšebeletso sebakeng sa lihlahisoa. Ntle le boiketsetso, ho laola lits'ebetso tse sebetsang libakeng tse fapaneng tsa ts'ebetso ho ba thata.

Moralo bakeng sa ho hloleha

Litšebeletso tse ngata tsa MSA li tloaetse ho hloleha. Ka nako e ts'oanang, ho sebetsana le liphoso tsamaisong e ajoang ha se mosebetsi o sa reng letho. Mehaho ea kopo e tlameha ho ikamahanya le mefokolo e joalo. Rebecca Parsons o nahana hore ho bohlokoa haholo hore re se ke ra hlola re sebelisa puisano lipakeng tsa lits'ebeletso; ho fapana le moo, re fetohela ho HTTP bakeng sa puisano, e batlang e sa tšepahale joalo ka ha.

Meaho e nang le nts'etsopele ea ho iphetola ha lintho (Evolutionary Design)

Mehaho ea tsamaiso ea MSA e lokela ho ntlafala ka ho iphetola ha lintho. Ho eletsoa ho fokotsa liphetoho tse hlokahalang ho meeli ea tšebeletso e le 'ngoe. Tšusumetso ho litšebeletso tse ling le eona e tlameha ho nkoa. Mokhoa oa setso ke ho leka ho rarolla bothata bona ka ho fetolela, empa MSA e fana ka maikutlo a ho sebelisa phetolelo ho
joalo ka khetho ea ho qetela.

fihlela qeto e

Ka mor'a tsohle tse ka holimo, re ka etsa hore na microservices ke eng. Mehaho ea Microservice ke mokhoa oa ho hlahisa kopo e le 'ngoe e le pokello ea litšebeletso tse nyenyane, e' ngoe le e 'ngoe e sebetsa ka mokhoa oa eona' me e sebelisana ka mekhoa e bobebe, hangata e leng API ea mohloli oa HTTP. Litšebeletso tsena li hahiloe holim'a bokhoni ba khoebo 'me li ka romelloa ka boikemelo ho sebelisoa ka botlalo
mochini o tsamaisang thepa ka boiketsetso. Ho na le boemo bo tlase ba taolo e bohareng ea lits'ebeletso tsena, tse ka ngoloang ka lipuo tse fapaneng tsa lenaneo le ho sebelisa mahlale a fapaneng a polokelo ea data.

Ho khetha mokhoa oa ho aha (karolo ea 3)

Bala karolo ea 2

Source: www.habr.com

Eketsa ka tlhaloso