Microservices: o a latou mea, aisea latou i ai ma le taimi e faʻatino ai

Na ou manaʻo e tusi se tusiga i luga o le autu o le microservice architecture mo se taimi umi, ae e lua mea na taofia ai aʻu - o le atili ai ona ou paʻu i le autu, o le tele foi lea o le foliga mai ia te aʻu o mea ou te iloa e manino, ma mea ou te faia ' t iloa e tatau ona su'esu'e ma su'esu'e. I le isi itu, ou te manatu ua i ai se mea e talanoaina i le va o tagata lautele. O lea e talia ai nisi manatu.

Tulafono a Conway ma le sootaga i le va o pisinisi, faʻalapotopotoga ma faʻamatalaga faʻamatalaga

Ou te toe faʻatagaina aʻu lava e sii mai:

"Soʻo se faʻalapotopotoga e faʻatulagaina se faiga (i le lautele) o le a maua se mamanu o lona fausaga e faʻatusalia ai le fausaga o 'au i totonu o lena faʻalapotopotoga."
— Melvyn Conway, 1967

I lo'u manatu, o lenei tulafono e sili atu ona fesoʻotaʻi ma le faʻaogaina o le faʻatulagaina o se pisinisi, nai lo le tuusaʻo i le faiga faʻamatalaga. Sei ou faamatala atu faatasi ma se faataitaiga. Fa'apea o lo'o i ai sau avanoa fa'apisinisi e mautu ma le umi o le olaga e fa'atatau i le fa'atulagaina o se atina'e (e le o se mea sese, ae ou te matua fiafia lava i le taimi lea na ou gaoia). o le a fa'atulagaina ma fa'agasolo fa'atasi ma lenei pisinisi .

Fa'asinomaga pisinisi o faiga fa'amatalaga

Microservices: o a latou mea, aisea latou i ai ma le taimi e faʻatino ai

Sei ou faamatala atu faatasi ma se faataitaiga. Faapea o loʻo i ai se avanoa pisinisi e faʻatulaga ai se pisinisi faʻatau atu pizza. I le V1 version (tatou taʻua muamua-faʻamatalaga), o le kamupani o se pizzeria, o se tinoitupe, ma se tautua tiliva. O lenei lomiga na umi ona ola i tulaga e maualalo le fesuiaiga o le siosiomaga. Ona sau lea o le version 2 e suitulaga i ai - sili atu le alualu i luma ma mafai ona faʻaogaina se faiga faʻamatalaga i lona autu mo pisinisi faʻatasi ai ma se fausaga monolithic. Ma o iinei, i loʻu manatu, o loʻo i ai se faʻasalaga mataʻutia e faʻatatau i monoliths - fa'apea fa'apea monolithic architecture e le fetaui ma le fa'ata'ita'iga pisinisi. Ioe, afai o lea, o le a le mafai lava ona galue le faiga - e feteenai ma le tulafono tutusa a Conway ma le mafaufau masani. Leai, o le fausaga monolithic e ogatasi atoatoa ma le pisinisi pisinisi i lenei laasaga o le atinaʻeina o pisinisi - o aʻu, ioe, o lona uiga o le tulaga ua uma ona faia ma faʻaogaina le faiga. Ose mea moni matagofie e tusa lava po o le a le faiga faufale, o le fa'ata'ita'iga fa'ata'ita'i-au'aunaga version 3 ma le microservices architecture version N o le a tutusa lelei. O le a le pu'e?

E tafe mea uma, suia mea uma, pe o microservices o se auala e faʻafefe ai le lavelave?

Ae tatou te leʻi faʻaauau, seʻi o tatou vaʻavaʻai i ni manatu sese e uiga i microservice architecture.

O i latou e lagolagoina le faʻaogaina o le microservice e masani ona finau e faapea o le talepeina o se monolith i microservices e faʻafaigofie ai le atinaʻe e ala i le faʻaitiitia o le code base o auaunaga taʻitasi. I lo'u manatu, o le fa'amatalaga lea e matua leai se aoga. O le mea moni, o le fegalegaleaiga manino i totonu o le monolith ma le homogeneous code e foliga mai e faigata? Afai o le tulaga moni lea, o poloketi uma o le a muamua fausia e avea ma microservices, ae o faʻataʻitaʻiga e faʻaalia ai o le femalagaiga mai le monolith i microservices e sili atu ona taatele. E le mou atu le lavelave; e na'o le si'itia mai vaega ta'itasi i feso'ota'iga (pe o pasi fa'amaumauga, RPC, APIs, ma isi fa'asologa) ma faiga fa'atulagaina. Ma e faigata lenei mea!

O le lelei o le faʻaaogaina o se faaputuga eseese e fesiligia foi. O le a ou le finau e mafai foi lenei mea, ae o le mea moni e seasea tupu (Vaai i luma - e tatau ona tupu lenei mea - ae o se taunuuga nai lo se avanoa).

Taamilosaga o le ola o oloa ma le taamilosaga o le ola tautua

Se'i toe va'ai i le ata o lo'o i luga. E le o se mea faʻafuaseʻi na ou matauina le faʻaitiitia o le taamilosaga o le olaga o se isi faʻamatalaga o se pisinisi - i tulaga faʻaonaponei, o le faʻavavevaveina o le suiga o se pisinisi i le va o lomiga e faʻamoemoe mo lona manuia. O le manuia o se oloa e fuafua i le saoasaoa o le suʻeina o faʻamatalaga pisinisi i totonu. Ma o iinei, i loʻu manatu, o loʻo taoto le aoga autu o le faʻataʻitaʻiga microservice. Ae tatou o i le faasologa.

Se'i o tatou aga'i atu i le isi la'asaga i le fa'atupuina o faiga fa'amatalaga - i le fa'ata'ita'iga fa'apitoa a le SOA. O lea, i se taimi patino na matou faʻamamafaina i la matou oloa tautua umi - ola umi i le uiga pe a fegasoloai i le va o lomiga o se oloa, o loʻo i ai se avanoa e umi atu ai le taamilosaga o le olaga o le auaunaga nai lo le taamilosaga o le olaga o le isi vaega o le oloa. E talafeagai le aua ne'i suia i latou - matou O le mea taua o le saoasaoa o le suiga i le isi lomiga. Ae paga lea, ua faamalosia i matou e fai suiga faifaipea i auaunaga - ma o iinei e aoga mea uma mo i matou, DevOps faiga, containerization, ma isi mea - mea uma e oʻo mai i le mafaufau. Ae e le o ni microservices!

Microservices o se auala e faʻafefe ai le lavelave ... pulega faʻatulagaina

Ma o iinei e mafai ona tatou agai i luma i le faʻamalamalamaina o le matafaioi a microservices - o se auala lea e faʻafaigofie ai le faʻatulagaina o oloa. I nisi auiliiliga, o le galuega a microservice taitasi o loʻo faʻamatalaina tonu le pisinisi pisinisi i totonu o le oloa e tusa ai ma le faʻataʻitaʻiga faʻataʻitaʻiga - ma o mea ia e le o ola i se taimi puupuu, ae i se avanoa pisinisi umi. Ma o le suiga i le isi lomiga o le oloa e tupu moni lava e le o iloa - e te suia / faaopoopo se tasi microservice, ma atonu na o le fuafuaga o latou fegalegaleaiga, ma faafuasei ona e maua oe lava i le lumanai, tuua i tua tagi tauva o loo faaauau pea ona oso i le va o lomiga o latou monoliths. Va'ai la o lo'o i ai se aofa'iga tele o microservices fa'atasi ai ma feso'ota'iga fa'ata'atia ma gafatia pisinisi. Ma e te sau e fausia le fausaga o lau oloa mai microservices saunia - na o le tusia o se ata, mo se faʻataʻitaʻiga. Fa'afetai - o lo'o i ai sau fa'avae - ma o lea e mafai ona e tosina atu pisinisi mo oe lava. Miti Moemiti.

sailiiliga

  • O le fausaga o le faiga e tatau ona fuafua i le taamilosaga o le olaga o ona vaega. Afai o se vaega o loʻo ola i totonu o se faʻasologa o oloa, e leai se mea e faʻateleina ai le lavelave o le faiga e ala i le faʻaogaina o le microservice approach.
  • Microservice architecture e tatau ona faʻavae i luga o le faʻataʻitaʻiga faʻataʻitaʻiga - aua o le avanoa pisinisi o le pito sili lea ona umi le ola
  • Fa'ata'ita'iga fa'ata'ita'iga (DevOps practices) ma fa'asologa o se tasi o mea e sili ona taua mo le fa'ata'ita'iga microservice - ona o le fa'atuputeleina o le suiga o vaega ua fa'atupula'ia ai mana'oga i le saoasaoa ma le lelei o le tu'uina atu.

puna: www.habr.com

Faaopoopo i ai se faamatalaga