Kuenderera mberi ne iwo dingindira rekushanduka uye shanduko mumaparadigms uye nzira dzekushanda zvakaitika munzvimbo yekuvandudza software, iyo yatichangobva kubata pazvinyorwa zvakadanwa "Software Kuvandudza: Ongororo yenhoroondo kusvika nhasi", "Kubatirana kuburikidza negore: Ungazviita sei?" y "XaaS: Cloud Computing - Zvese seSevhisi", nhasi tichataura nezvazvo Microservices.
Microservices ndeyazvino software yekuvaka, kwete API (Application Programming Interface) kana tekinoroji pachayo, iyo inogona kuiswa uye kushandiswa. Software mavakirwo, anozivikanwawo seemaitiro mapurogiramu, akasiyana zvachose nehurongwa hwekuita mitauro, nekuti ivo vanongomisa nzira iyo matekinoroji anofanira kushanda kwete maitirwo ainoitwa.
Nhanganyaya
Microservices inogona kuoneka sekushanduka kweiyo SOA Architecture (Sevhisi-Yakatemerwa Architecture), iyo inotungamira vanogadzira kuti vagadzire mamwe modular application, ayo anoshanda uye anozvimiririra, aine hunyanzvi hwepamusoro kuti ishandiswe zvakare nenzira inoshanda, sezvinoitwa nenzira imwecheteyo, patinokwenenzvera kushandiswa kweimwe Hardware, mairi inoitika chete izvo zvinodikanwa chaizvo, pachinzvimbo chekufumura kugona kwayo kuzere zvisingaite.
Iyo Dhizaini yeMicroservices, mukuita kwayo haina kuve yakapararira sekufungidzira, ndiko kuti, inozivikanwa zviri nani pane kushandiswa. Nekudaro, zuva rega rega rakawanda, vagadziri vazhinji vari kurishandisa nekuti iri software yekuvandudza modhi iyo Iyo inovandudza akasiyana nguva, mashandiro uye kugadzikana mukati memapurojekiti kwainoiswa. Kunze kwezvo, zvake yakapusa inosanganisika scalability inoita kuti inyatso kukodzera mukuvandudzika uko kuyambuka-chikuva kuenderana (Webhu, Nhare, Wearables, IoT) yakakosha.
Asi, nepo SOA iri yepamusoro chikamu ChivakwaNdokunge, iyo Architecture uko kunyorera kunoenderana nemasevhisi akavakwa, uko sevhisi iri diki uye inonyanya kushanda chikamu chebasa mukati meyakagadzirwa application, Microservices Architecture zvakare inotibvumidza isu kugadzira masevhisi, asi aya masevhisi akagadzirwa nenzira diki chaizvo uye yakatarwa kuitira kuti vazadzise chaizvo chaizvo uye nenguva yekushanda, nenzira yekuti ivo vagone kubviswa kubva kune mamwe maapplication uye voshanda nenzira yakasununguka zvachose kubva kune zororo rekushandisa kwayakagadzirwa.
Chii chinonzi Software Architectures (Mapatani)?
Kuti unzwisise Software Architecture yeMicroservices mushe, zvakanaka kuti uzive zvishoma nezve ese akanyanya kuzivikanwa aripo Software Architectures. Kune akawanda aripo, sezvingaonekwa pane saiti ye oodesign kana kungoti Wikipedia, asi maererano nebhuku rakakurumbira rinonzi "Bhuku Rekugadzira Bhuku" (Dhizaini Mapatani Bhuku) mapatani aripo anogona kusarudzwa se:
Kugadzira
Ivo vanobata nenzira dzekumisikidza zvinhu uye vane chinangwa chekubvisa maitiro ekusimbisa uye kuviga iwo maratidziro ezvinhu zvinhu zvinogadzirwa kana kutanga. Mukirasi ino pane zvinotevera:
- Abstract fekitori
- muvaki
- Fekitori Maitiro
- kumumvuri
- Singleton
Structural
Izvo zvinotsanangudza makirasi uye zvinhu (zvakapusa kana mukomboni) zvinogona kusanganiswa kuita zvivakwa zvakakura uye nekupa mashandiro matsva. Mukirasi ino pane zvinotevera:
- adhaputa
- zambuko
- Composite
- Shongedza
- Kutarisana
- Flyweight
- Proxy
Maitiro
Izvo zvinotibatsira kutsanangura kutaurirana uye iteration pakati pezvinhu zvehurongwa. Chinangwa cheiyi patani kudzora kubatana pakati pezvinhu. Mukirasi ino pane zvinotevera:
- Chain Yebasa
- murayiro
- Interpreter
- iterators
- Murevereri
- Memento
- Mucherechedzi
- mamiriro
- nzira
- Template Maitiro
- muenzi
vamwe
Yepamberi dhizaini mapatani akaratidzira mashemas anotsanangura dhizaini dhizaini yekuvakisa masystems. Asi kana isu tichida kuratidza zvirinani kuronga kwakakosha uye kwakarongeka kwesoftware masisitimu akagadzirwa, isu tinowanzo kuwana ichi chimwe chikamu:
- Slate zvivakwa
- DAO: Dhata Yekuwana Chinhu
- DTO: Dhata Yekuchinjisa Chinhu
- EDA: Chiitiko Chinotungamirwa Architecture
- Kunyatso kukumbira
- Zvinhu zvisina kusimira
- Yakarongwa zvirongwa
- Peer-to-peer
- Pipeline
- SOA: Sevhisi Yakatemerwa Architecture
- Matanho matatu
Kune zvakare iyo "Mutevedzeri Wona Muenzaniso" iyo inozivikanwa uye inoshandiswa, uye yakakamurwa kuva:
- Model / Wona / Mutongi
- Model / Wona / Mutauri
- Model / Wona / Mutauri ane Model Presenter
- Model / Wona / Wona-Muenzaniso
- Model / Tarisa / Presenter ine Passive View
- Model / View / Presenter ine Supervisor Mutongi
Kuva iyo "Controller View Model" imwe yeanonyanya kuzivikanwa nekuitwa nhasi, hazvina kukwana kupa hunodiwa hunoshanda kuchikumbiro chikumbiro, uye ichi ndicho chimwe chezvikonzero zvikuru nei, Microservices Architecture iri kutsiva iyo Model-View-Controller (MVC).
Kubatsira kweMicroservices Architecture
Kana padandemutande pachishandiswa Microservices Architecture, inowanzo kuve nezvakanakira zvinotevera:
- Gadzirisa zviri nyore dambudziko rega rega kana dambudziko rakaratidzwa kugadzirisa yega yega Microservice inobatanidzwa mune yakatarwa mamiriro.
- Kudzikamisa zvakajairika kana kutadza kwepasirese kwemasevhisi, nekuti Microservice painokundikana haina zvazvinoita kune vamwe, nekuti vakazvimiririra zvachose.
- Kurerutsa kuvhurwa uye kuiswa kweakakwana kana akasarudzika mashandiro kana masevhisi, nekuti Microservice yega yega inogona kuwedzerwa kana kubviswa nekuvandudzwa zvakasiyana uye zvishoma nezvishoma.
- Kuti uve nani kuwana kune zvinoshandiswa kana masevhisi akagadzirwa kubva kumarudzi ese emidziyo uye mapuratifomu
- Aumentar kugona kwepuratifomu, nekuti iyo Microservices inogona kugoverwa mumaseva akasiyana uye inyore mumitauro yakasiyana.
Vhura Source Sisitimu
Kune akawanda open sosi sarudzo kuti vashandisi ve software vanogona kushandisa kugadzira mhinduro dziri chikamu cheMicroservices Architectures. Zvikurukuru zveJava, inova tekinoroji inoshandiswa zvakanyanya kune izvi, pane zvinotevera:
- Cricket
- dropwizard
- Eclipse MicroProfile
- Helidon
- Jersey
- Payara Micro
- tamba
- Kudzorera
- chimvari
- Bhoti yechirimo
- Squash
- swagger
- telepresence
- WildFly Kunaka
- zipkin
Mienzaniso yeWebhu ine Microservices Architectures
Pakati pehuwandu hwemawebhusaiti ayo anopa hukuru hwekushandisa masevhisi uye akaenderera mberi nekushandisa iyo Microservices Architecture yekuvandudza kugadziriswa uye kusagadzikana kwemasevhisi avo uye zvigadzirwa zvigadzirwa, zvichiita kuti zvive nyore, zvinoshanda uye nekukurumidza, tinogona kutaura matatu makuru mune indasitiri. Ndezvipi izvi:
- Amazon
- Ebay
- Netflix
Mhedziso
Zviri pachena kuti Microservices inopa yakawanda kune Yemazuva ano Web-based Software DevelopmentAsi izvi zvinoreva zvakare kugadzirisa matanho matsva ekugadzirisa. Matambudziko asina chekuita chete neiyo Sisitimu yekudzidza uye kushanda zvine hunyanzvi, asi zvakare kuti zviitiko zvitsva izvi zvinozadzikiswa nekuzadzikiswa mumadhipatimendi eIT, ayo pakupedzisira ndivo vanoaisa pamhepo nekutarisira, uye vane vhoti yekurema mumasarudzo ekupedzisira nezve budiriro yega yega. Asi Iyi Architecture iri pano uye yauya kuzogara kwenguva yakareba.