Microservices - o se pa'u tu'ufa'atasiga o fa'aliliuga

Talofa, Habr! Ou te faailoa atu i o outou mafaufau faaliliuga a le tusitala o le tusiga Microservices – Fa'asoa Fa'atasiga o Fa'aliliuga.
Microservices - o se pa'u tu'ufa'atasiga o fa'aliliuga
I le taimi o loʻo faasolosolo malie atu le lalolagi IT i microservices ma meafaigaluega e pei o Kubernetes, naʻo le tasi le faʻafitauli ua faʻateleina ma sili atu ona iloa. O lenei faafitauli- pa fa'atasi microservice versions. Ae ui i lea, o le IT community e talitonu o le tulaga o loʻo i ai nei e sili atu le lelei nai lo "Faalagolago seoli" tupulaga muamua o tekinolosi. Ae ui i lea, o le faʻaliliuina o microservices o se faʻafitauli faigata tele. O se tasi faʻamaoniga o lenei mea e mafai ona avea ma tala faʻapei "Tuu mai ia te aʻu laʻu monolith".

Afai e te le malamalama lava i le faʻafitauli e ala i le faitauina o lenei tusitusiga, seʻi ou faʻamatalaina. Fa'apea o lau oloa e aofia ai le 10 microservices. Ia tatou fa'apea e 1 le lomiga fou ua tu'uina atu mo nei microservices ta'itasi. Naʻo le 1 version - Ou te faʻamoemoe e mafai ona tatou malilie uma o se mea e sili ona le taua ma le taua. Ae peitai, o lenei, sei o tatou toe tilotilo i la tatou oloa. Faatasi ai ma le na'o le tasi le lomiga fou o vaega taitasi, ua tatou maua nei le 2^10 - po'o le 1024 fa'atonuga o le auala e mafai ai ona fatuina a tatou oloa.

Afai e i ai lava se le malamalama, sei ou talepeina le numera. O lea e 10 a matou microservices, e maua uma e le tasi le faʻafouga. O lona uiga, matou te maua 2 fa'aliliuga talafeagai mo microservice ta'itasi (pe tuai pe fou). I le taimi nei, mo vaega uma o oloa, e mafai ona tatou faʻaogaina se tasi o nei faʻasologa e lua. I le matematika, e tutusa lava pe a iai le numera binary o numera 10. Mo se faʻataʻitaʻiga, seʻi tatou fai atu o le 1 o se lomiga fou, ma o le 0 o se faʻamatalaga tuai - ona tasi lea o le suiga e mafai ona faʻaalia o le 1001000000 - lea o loʻo faʻafouina ai le 1st ma le 4th, ae o isi uma e leai. Mai le matematika tatou te iloa o le numera binary 10-numera e mafai ona i ai 2^10 poʻo 1024 tau. O lona uiga, ua matou faʻamaonia le fua o le numera o loʻo matou feagai.

Se'i fa'aauau pea a tatou fa'amatalaga - o le a le mea e tupu pe a fai e 100 a tatou microservices ae ta'i 10 fa'aliliuga talafeagai? O le tulaga atoa ua avea ma mea le lelei - ua i ai nei a matou 10^100 faʻasologa - o se numera tele. Ae ui i lea, ou te manaʻo e faʻaigoaina lenei tulaga i le auala lenei, aua o lea ua tatou le o toe lalafi i tua o upu e pei o "kubernetes", ae o loʻo feagai ma le faʻafitauli e pei ona i ai.

Aisea ua ou matua fiafia ai i lenei faafitauli? O se vaega ona, talu ai na galue muamua i le lalolagi o NLP ma AI, na matou talanoaina le faʻafitauli o le paʻu tuʻufaʻatasia tele e uiga i le 5-6 tausaga talu ai. Na'o le fa'aliliuga sa i ai a matou upu ta'itasi, ae nai lo o oloa sa iai a matou fuaiupu ma parakalafa. Ma e ui lava o faʻafitauli o le NLP ma AI e tumau pea le le mafai ona foia, e tatau ona ioeina o le alualu i luma taua na faia i nai tausaga talu ai. (i loʻu manatu, e mafai ona alualu i lumaоE sili atu pe a faʻaitiitia le gauai atu o tagata i totonu o le alamanuia i le aʻoaʻoina o masini ma sili atu i isi auala - ae o lea ua le o se autu).

Tatou toe foi i le lalolagi o DevOps ma microservices. O loʻo tatou feagai ma se faʻafitauli tele, faʻafoliga e pei o se elefane i le Kunstkamera - aua o le mea e masani ona ou faʻalogo ai o le "naʻo le ave o kubernetes ma le foeuli, ma o le a lelei mea uma!" Ae leai, o le a le lelei mea uma pe a tuʻu mea uma e pei ona i ai. E le gata i lea, o se fofo auʻiliʻili i lenei faʻafitauli e foliga mai e le taliaina ona o lona lavelave. E pei o le NLP, e tatau ona tatou faʻafeiloaʻi muamua lenei faʻafitauli e ala i le faʻaitiʻitia o le lautele o suʻesuʻega-i lenei tulaga, e ala i le faʻaumatiaina o suiga tuai.

O se tasi o mea e ono fesoasoani o se mea na ou tusia i le tausaga talu ai e uiga i le mana'oga e fa'atumauina se la'ititi la'ititi i le va o lomiga fa'asalalau mo tagata fa'atau. E taua foi le matauina o se faiga lelei CI/CD e fesoasoani tele i le faaitiitia o fesuiaiga. Ae ui i lea, o le tulaga o loʻo iai nei ma le CI / CD e leʻo lava lelei e foia ai le faʻafitauli o faʻasalalauga e aunoa ma ni meafaigaluega faʻaopoopo mo le faʻamaumauga ma le siakiina o vaega.

O le mea tatou te manaʻomia o se faiga faʻataʻitaʻiga i le tulaga tuʻufaʻatasia, lea e mafai ai ona tatou fuafuaina le tulaga lamatia mo vaega taʻitasi, ma e iai foʻi se faiga faʻapitoa mo le faʻafouina o vaega eseese ma suʻega e aunoa ma se faʻalavelave faʻapitoa - e vaʻai pe o le a le aoga ma le mea e leai.

O sea faiga fa'ata'ita'iga e mafai ona fa'apea:

  1. E tusia e le au atiaʻe ni suʻega (o se laʻasaga taua lea - aua a leai e leai ni a matou faʻataʻitaʻiga - e pei o le faʻailogaina o faʻamaumauga i le aʻoaʻoina o masini).
  2. O vaega taʻitasi (poloketi) e maua lana lava CI - o lenei faiga ua lelei ona atiaʻe, ma o le mataupu o le fatuina o se faiga CI mo se vaega e tasi ua tele lava ina foia.
  3. O le "smart integration system" e aoina ai taunuuga o faiga CI eseese ma faʻapipiʻi galuega faʻavae i totonu o le oloa mulimuli, faʻataʻitaʻi suʻega ma mulimuli ane faʻatatau le ala sili ona puupuu e maua ai le faʻatinoga o oloa e manaʻomia e faʻavae i luga o vaega o loʻo i ai ma tulaga lamatia. Afai e le mafai se faʻafouga, e logoina e lenei faiga le au atinaʻe e uiga i vaega o loʻo i ai ma po o ai o latou e mafua ai le mea sese. Toe tasi, o le faiga o su'ega e taua tele iinei - talu ai o le faiga tu'ufa'atasi e fa'aaogaina su'ega e fai ma fa'ata'ita'iga o iloiloga.
  4. CD system, lea e maua ai fa'amaumauga mai le Smart Integration System ma fa'atino sa'o le fa'afouga. O lenei laasaga e muta ai le taamilosaga.

I se aotelega, ia te aʻu o se tasi o faʻafitauli sili ona tele i le taimi nei o le leai o se "Smart Integration System" lea e faʻafesoʻotaʻi ai vaega eseese i totonu o se oloa ma faʻatagaina oe e siaki pe faʻafefea ona tuʻufaʻatasia le oloa atoa. O le a ou fiafia i manatu o tagata lautele i lenei mea (spoiler - o loʻo ou galue nei i se galuega Reliza, lea e mafai ona avea ma se faiga faʻapipiʻi atamai).

E tasi le mea mulimuli ou te fia taʻua, ia te aʻu, o le monolith e le taliaina mo soʻo se poloketi e tusa lava pe lapopoa tele. Mo aʻu, o le taumafai e faʻavave le taimi faʻatinoina ma le lelei o le atinaʻe e ala i le toe foʻi i se monolith e mafua ai le masalosalo tele. Muamua, o le monolith ei ai se faʻafitauli tutusa o le puleaina o vaega - i totonu o faletusi eseese o loʻo i ai, peitaʻi, o nei mea uma e le o faʻaalia ma faʻaalia i le taimi na faʻaalu e le au atinaʻe. O le iʻuga o le faʻafitauli o le monolith o le le mafai lea ona faia ni suiga i le code - ma matua telegese le saoasaoa o le atinaʻe.

Microservices faʻaleleia le tulaga, ae o le microservice architecture e feagai ma le faʻafitauli o le paʻu tuʻufaʻatasia i le tulaga tuʻufaʻatasia. Ioe, i se tulaga lautele, ua matou siitia le faafitauli lava e tasi mai le tulaga o le atinaʻe i le tulaga tuʻufaʻatasia. Ae ui i lea, i loʻu manatu, o le microservices approach o loʻo taʻitaʻia pea iʻuga sili atu, ma 'au e ausia vave taunuʻuga (atonu e mafua ona o le faʻaititia o le tele o le atinaʻe iunite - poʻo tele vaega). Ae ui i lea, o le siitia mai le monolith i microservices e leʻi faʻaleleia atili le faʻagasologa - o le tuʻufaʻatasia o le microservice versions o se faʻafitauli tele, ma e tele a tatou avanoa e faʻaleleia ai le tulaga aʻo tatou foia.

puna: www.habr.com

Faaopoopo i ai se faamatalaga