Microservices: inona izy ireo, nahoana izy ireo ary rahoviana no hampihatra azy ireo

Te-hanoratra lahatsoratra momba ny lohahevitra momba ny maritrano microservice aho nandritra ny fotoana ela, saingy zavatra roa no nanakana ahy - arakaraka ny nidirany tao amin'ilay lohahevitra, dia vao mainka hitako fa miharihary ny zavatra fantatro, ary ny zavatra hitako. tsy maintsy ianarana sy ianarana ny fahalalana. Etsy ankilany, heveriko fa efa misy zavatra horesahina eo amin'ny mpihaino marobe. Noho izany dia raisina ny hevitra hafa.

Ny Lalàn'i Conway sy ny fifandraisana misy eo amin'ny orinasa, ny fandaminana ary ny rafi-baovao

Mbola averiko indray ny teny hoe:

"Ny fikambanana rehetra izay mamolavola rafitra (amin'ny heviny malalaka) dia hahazo endrika izay ny rafitra dia mamerina ny firafitry ny ekipa ao amin'io fikambanana io."
— Melvyn Conway, 1967

Araka ny hevitro, io lalàna io dia mifandray kokoa amin'ny fahafaha-mikarakara orinasa, fa tsy mivantana amin'ny rafi-baovao. Mamelà ahy hanazava amin'ny ohatra iray. Andeha hatao hoe manana fahafahana ara-barotra tsy dia misy dikany loatra isika miaraka amin'ny tsingerin'ny fiainana amin'ny halavany ka azo atao ny mandamina orinasa iray (tsy diso izany, fa tena tiako ity teny nangalatra ity). hifanaraka amin'ny fandaminana sy amin'ny fomba fiasa amin'ity raharaha ity.

Fanorenana ara-barotra amin'ny rafitra fampahalalana

Microservices: inona izy ireo, nahoana izy ireo ary rahoviana no hampihatra azy ireo

Mamelà ahy hanazava amin'ny ohatra iray. Andeha atao hoe misy fahafahana ara-barotra hikarakarana orinasa mivarotra pizza. Ao amin'ny version V1 (aleo atao hoe pre-information) ny orinasa dia pizzeria, rejisitra vola ary serivisy fanaterana. Ity dikan-teny ity dia naharitra ela tao anatin'ny toe-javatra tsy dia misy fiovaovan'ny tontolo iainana. Avy eo dia tonga nisolo azy ny version 2 - mandroso kokoa ary afaka mampiasa rafitra fampahalalam-baovao ho an'ny orinasa miaraka amin'ny maritrano monolithic. Ary eto, araka ny hevitro, misy ny tsy rariny mahatsiravina mifandraika amin'ny monoliths - ny maritrano lazaina fa monolithic dia tsy mifanaraka amin'ny modely fandraharahana sehatra. Eny, raha izany no izy, dia tsy afaka miasa mihitsy ny rafitra - mifanohitra amin'ny lalànan'i Conway sy ny saina mahazatra. Tsia, ny maritrano monolithic dia mifanaraka tanteraka amin'ny maodely fandraharahana amin'izao dingan'ny fivoaran'ny raharaham-barotra izao - Mazava ho azy fa midika hoe ny dingana efa noforonina sy napetraka ny rafitra. Zava-misy tena mahafinaritra tokoa fa na inona na inona fomba fiasa ara-javakanto, na ny maritrano miompana amin'ny serivisy 3 sy ny version microservices architecture N dia hiasa tsara. Inona no azo?

Mikoriana ny zava-drehetra, miova ny zava-drehetra, sa fitaovana entina miady amin'ny fahasarotana ve ny microservice?

Alohan'ny hanohizantsika, andeha hojerentsika ny hevi-diso sasany momba ny maritrano microservice.

Ireo mpanohana ny fampiasana fomba fiasa microservice dia miady hevitra matetika fa ny famongorana ny monolith ho microservice dia manamora ny fomba fampandrosoana amin'ny alàlan'ny fampihenana ny fototry ny serivisy tsirairay. Raha ny fahitako azy dia tena tsy misy dikany tokoa io filazana io. Raha ny marina, toa sarotra ny fifandraisana miharihary ao anatin'ny kaody monolith sy homogeneous? Raha izany tokoa no izy, ny tetikasa rehetra dia hatsangana ho microservices, raha toa kosa ny fampiharana dia mampiseho fa mahazatra kokoa ny fifindra-monina avy amin'ny monolith mankany amin'ny microservices. Tsy levona ny fahasarotana; mifindra fotsiny avy amin'ny maodely tsirairay mankany amin'ny fifandraisana (na bus data, RPC, API, ary protocols hafa) ary rafitra orkestra. Ary sarotra izany!

Ny tombony amin'ny fampiasana stack heterogène dia mampametra-panontaniana ihany koa. Tsy hiady hevitra aho fa azo atao ihany koa izany, fa raha ny marina dia zara raha mitranga izany (Mijery ny ho avy - tokony hitranga izany - fa noho ny vokany fa tsy tombony).

Ny fiainan'ny vokatra sy ny tsingerin'ny serivisy

Jereo indray ny kisary etsy ambony. Tsy kisendrasendra ny nanamarihako ny fihenan'ny tsingerin'ny fiainana amin'ny dikan-teny misaraka amin'ny orinasa iray - amin'ny toe-javatra maoderina, ny fanafainganana ny fifindrana amin'ny orinasa eo amin'ny dikan-teny no manapa-kevitra amin'ny fahombiazany. Ny fahombiazan'ny vokatra iray dia voafaritra amin'ny hafainganam-pandehan'ny fitsapana petra-kevitra momba ny fandraharahana ao anatiny. Ary eto, raha ny hevitro, dia ny tombony lehibe amin'ny maritrano microservice. Fa aleo hilamina.

Andeha isika hiroso amin'ny dingana manaraka amin'ny fivoaran'ny rafitra fampahalalam-baovao - mankany amin'ny maritrano miompana amin'ny serivisy SOA. Noho izany, tamin'ny fotoana iray dia nanasongadina ny vokatray izahay tolotra maharitra - ela velona amin'ny heviny hoe rehefa mifindra eo amin'ny dikan-tenin'ny vokatra iray, dia mety ho lava kokoa noho ny tsingerin'ny androm-piainan'ny vokatra manaraka ny tsingerin'ny serivisy. Mety ho lojika ny tsy hanovana azy ireo mihitsy - isika Ny zava-dehibe dia ny hafainganam-pandehan'ny fifindrana mankany amin'ny dikan-teny manaraka. Saingy indrisy, voatery manao fanovana tsy tapaka amin'ny serivisy isika - ary eto dia miasa ho antsika ny zava-drehetra, ny fomba amam-panao DevOps, ny containerization, sy ny sisa - izay rehetra tonga ao an-tsaina. Saingy mbola tsy microservice ireo!

Microservices ho fitaovana hiadiana amin'ny fahasarotana... fitantanana ny fandrindrana

Ary eto isika dia afaka mandroso amin'ny anjara andraikitry ny microservices - fomba iray manatsotra ny fitantanana ny fanamafisana ny vokatra. Amin'ny antsipiriany bebe kokoa, ny fiasan'ny microservice tsirairay dia mamaritra mazava tsara ny fiasan'ny orinasa ao anatin'ny vokatra araka ny modelin'ny sehatra - ary ireo dia zavatra izay tsy miaina amin'ny dikan-teny fohy, fa amin'ny fahafahana ara-barotra maharitra. Ary ny fifindrana mankany amin'ny kinova manaraka amin'ny vokatra dia mitranga ara-bakiteny tsy voamarika - manova / manampy microservice iray ianao, ary angamba ny drafitry ny fifandraisan'izy ireo fotsiny, ary tampoka dia mahita ny tenanao amin'ny ho avy ianao, mamela ireo mpifaninana mitomany izay manohy mitsambikina eo anelanelan'ny dikan-teny. ny monoliths. Alao sary an-tsaina izao fa be dia be ny microservices miaraka amin'ny interface efa voafaritra mialoha sy ny fahaiza-manao raharaham-barotra. Ary tonga ianao ary manangana ny firafitry ny vokatrao avy amin'ny microservice efa vita - amin'ny fanaovana sary fotsiny, ohatra. Arahabaina - manana sehatra ianao - ary ankehitriny dia afaka manintona orinasa ho anao ianao. Dreams Dreams.

hitany

  • Ny rafitry ny rafitra dia tokony ho faritana amin'ny tsingerin'ny fiainan'ireo singa ao aminy. Raha misy singa iray miaina ao anatin'ny dikan-tsarimihetsika iray, dia tsy misy dikany ny mampitombo ny fahasarotan'ny rafitra amin'ny fampiasana fomba fiasa microservice.
  • Ny maritrano microservice dia tokony hiorina amin'ny maodely sehatra - satria ny fahafahan'ny fandraharahana no sehatra maharitra indrindra
  • Ny fanao fanaterana (fomba fanao DevOps) sy ny orkestra dia iray amin'ireo zava-dehibe indrindra amin'ny maritrano microservice - noho ny fitomboan'ny tahan'ny fiovan'ny singa dia mampitombo ny fitakiana ny hafainganam-pandeha sy ny kalitaon'ny fanaterana.

Source: www.habr.com

Add a comment