Kusankha kalembedwe kamangidwe (gawo 3)

Pa Habr. Lero ndikupitiriza mndandanda wa zolemba zomwe ndinalemba makamaka poyambira maphunziro atsopano. "Software Architect".

Mau oyamba

Kusankha kalembedwe kamangidwe ndi chimodzi mwazosankha zaukadaulo pomanga dongosolo lazidziwitso. M'nkhani zotsatizanazi, ndikupempha kuti ndifufuze masitayelo odziwika bwino a zomangamanga zomangira ndikuyankha funso loti ndi nthawi iti yomanga yomwe imakonda kwambiri. Pofotokozera, ndiyesera kujambula unyolo womveka womwe umafotokozera za chitukuko cha zomangamanga kuchokera ku monoliths kupita ku microservices.

Nthawi yotsiriza tinakambirana za mitundu yosiyanasiyana ya monoliths ndi kugwiritsa ntchito zigawo zomanga, zonse zomanga zigawo ndi zigawo zotumizira. Timamvetsetsa zomangamanga zomwe zimagwira ntchito.

Tsopano pomaliza tidzafotokozera mikhalidwe yayikulu ya kamangidwe ka microservice.

Mgwirizano wa zomangamanga

Ndikofunikira kumvetsetsa kuti kutengera matanthauzidwe omwe adaperekedwa m'nkhani zam'mbuyomu, ntchito iliyonse ndi gawo, koma si ntchito iliyonse yomwe ili ndi microservice.

Makhalidwe a Microservice Architecture

Makhalidwe akuluakulu a kamangidwe ka microservice ndi:

  • Zokonzedwa mozungulira Maluso a Bizinesi
  • Zogulitsa osati Ntchito
  • Mapeto anzeru ndi mapaipi osayankhula
  • Decentralized Governance
  • Decentralized Data Management
  • Infrastructure Automation
  • Kupanga kulephera
  • Zomangamanga ndi chitukuko chachisinthiko (Evolutionary Design)

Mfundo yoyamba imachokera ku zomangamanga zomwe zimagwira ntchito chifukwa ma microservices ndi ntchito yapadera. Mfundo zina ziyenera kuganiziridwa mosiyana.

Zokonzedwa mozungulira Maluso a Bizinesi

Tsopano ndikofunikira kukumbukira lamulo la Conway: mabungwe omwe amapanga machitidwe amalinganiza kamangidwe kake, kutengera momwe amalumikizirana mkati mwa mabungwewa. Mwachitsanzo, tingakumbukire nkhani yopanga compiler: gulu la anthu asanu ndi awiri linapanga compiler ya mapepala asanu ndi awiri, ndipo gulu la anthu asanu linapanga makina asanu.

Ngati tikukamba za monoliths ndi microservices, ndiye ngati chitukuko chikukonzedwa ndi madipatimenti ogwira ntchito (backend, frontend, database administrators), ndiye kuti timapeza monolith yapamwamba.

Kuti mupeze ma microservices, magulu ayenera kukonzedwa ndi kuthekera kwamabizinesi (maoda, kutumiza, gulu lamakatalo). Bungweli lidzalola kuti magulu aziyang'ana kwambiri pomanga mbali zina za pulogalamuyo.

Zogulitsa osati Ntchito

Njira ya pulojekiti yomwe gulu limasamutsira magwiridwe antchito kumagulu ena ndizosayenera kwenikweni pankhani ya zomangamanga za microservice. Gululo liyenera kuthandizira dongosololi m'moyo wake wonse. Amazon, m'modzi mwa atsogoleri pakukhazikitsa ma microservices, adati: "Mumamanga, mumayendetsa." Njira yopangira mankhwala imalola gulu kuti limve zosowa za bizinesi.

Mapeto anzeru ndi mapaipi osayankhula

Zomangamanga za SOA zidasamalira kwambiri njira zoyankhulirana, makamaka Enterprise Service Bus. Zomwe nthawi zambiri zimatsogolera ku Bokosi la Spaghetti Lolakwika, ndiye kuti, zovuta za monolith zimasandulika kukhala zovuta zolumikizana pakati pa mautumiki. Zomangamanga za Microservice zimagwiritsa ntchito njira zosavuta zolumikizirana.

Decentralized Governance

Zosankha zazikulu zokhudzana ndi ma microservices ziyenera kupangidwa ndi anthu omwe amapanga ma microservices. Apa, zisankho zazikulu zimatanthauza zosankha
zilankhulo zamapulogalamu, njira zotumizira anthu, makontrakitala olumikizana ndi anthu, ndi zina.

Decentralized Data Management

Njira yokhazikika, yomwe ntchitoyo imadalira pa database imodzi, sangaganizire zenizeni za ntchito iliyonse. MSA imakhudza kasamalidwe ka deta, kuphatikizapo kugwiritsa ntchito matekinoloje osiyanasiyana.

Infrastructure Automation

MSA imathandizira kutumizira ndi kutumiza mosalekeza. Izi zitha kutheka ndi njira zodzipangira zokha. Panthawi imodzimodziyo, kutumiza mautumiki ambiri sikukuwoneka ngati chinthu chowopsya. Njira yotumizira iyenera kukhala yotopetsa. Mbali yachiwiri ikukhudzana ndi kayendetsedwe ka ntchito m'malo opangira zinthu. Popanda automation, kuyang'anira njira zomwe zikuyenda m'malo osiyanasiyana ogwira ntchito kumakhala kosatheka.

Kupanga kulephera

Ntchito zambiri za MSA zimakhala zolephera. Panthawi imodzimodziyo, kukonza zolakwika mu dongosolo logawidwa si ntchito yaing'ono. Mapangidwe a ntchito ayenera kukhala ogwirizana ndi zolephera zotere. Rebecca Parsons akuganiza kuti ndikofunikira kwambiri kuti tisagwiritsenso ntchito kulumikizana pakati pa mautumiki; m'malo mwake, timatembenukira ku HTTP kuti tizilumikizana, zomwe sizodalirika.

Zomangamanga ndi chitukuko chachisinthiko (Evolutionary Design)

Kapangidwe ka dongosolo la MSA kuyenera kusinthika. Ndikoyenera kuchepetsa kusintha kofunikira kumalire a ntchito imodzi. Zokhudza ntchito zina ziyeneranso kuganiziridwa. Njira yachikhalidwe ndikuyesa kuthetsa vutoli ndikusintha, koma MSA ikuwonetsa kugwiritsa ntchito kumasulira
ngati njira yomaliza.

Pomaliza

Pambuyo pa zonsezi, tikhoza kupanga microservices. Zomangamanga za Microservice ndi njira yopangira pulogalamu imodzi ngati gulu lazinthu zing'onozing'ono, chilichonse chikuyenda mwanjira yake ndikulumikizana kudzera munjira zopepuka, nthawi zambiri API ya HTTP. Ntchitozi zimamangidwa pazantchito zamabizinesi ndipo zitha kutumizidwa paokha pogwiritsa ntchito mokwanira
makina ogwiritsira ntchito makina. Pali mulingo wocheperako wa kasamalidwe kapakati pa mautumikiwa, omwe amatha kulembedwa m'zilankhulo zosiyanasiyana zamapulogalamu ndikugwiritsa ntchito matekinoloje osiyanasiyana osungira deta.

Kusankha kalembedwe kamangidwe (gawo 3)

Werengani part 2

Source: www.habr.com

Kuwonjezera ndemanga