Tala'aga o le Dodo IS Architecture: O le Ala i tua o le Ofisa

Ua suia e Habr le lalolagi. Ua silia ma le tausaga na matou faia ai le blog. Pe a ma le ono masina talu ai na matou maua ai ni faʻamatalaga talafeagai mai tagata o Khabrovsk: "Dodo, e te fai mai i soo se mea e iai sau lava polokalama. O le a le ituaiga faiga lea? Ae aiseā e manaʻomia ai e le filifili pizzeria?”

Sa matou nonofo ma mafaufau ma iloa e sa'o oe. O loʻo matou taumafai e faʻamatala mea uma i o matou tamatamailima, ae o loʻo sau i fafo ma le leai o se faʻamatalaga atoa o le faiga i soo se mea. O lea na amata ai se malaga umi o le aoina o faʻamatalaga, saili mo tusitala ma tusia se faasologa o tala e uiga i Dodo IS. Tatou o!

Fa'afetai: Fa'afetai mo le fa'asoaina mai o lou finagalo fa'aalia ma matou. Faafetai ia te ia, na matou faamatalaina mulimuli ane le faiga, tuufaatasia se technoradar, ma o le a le pine ae faʻasalalau se faʻamatalaga tele oa matou gaioiga. Ana leai outou, semanu matou te nonofo fa'apenei mo le isi 5 tausaga.

Tala'aga o le Dodo IS Architecture: O le Ala i tua o le Ofisa

Fa'asologa o tala "O le a le Dodo IS?" ta'u mai e uiga i:

  1. Monolith muamua i Dodo IS (2011-2015). (Sologa...)
  2. Ala i tua: fa'avae eseese ma pasi. (O oe iinei)
  3. O le ala o le tagata o tausia: fa'ailoga i luga o le fa'avae (2016-2017). (Sologa...)
  4. Le talaʻaga o microservices moni. (2018-2019). (Sologa...)
  5. Ua mae'a le va'aiga o le monolith ma le fa'amautuina o le fausaga. (Sologa...)

Afai e te fiafia e aʻoaʻo se isi mea, tusi i faʻamatalaga.

Manatu i le fa'asologa o taimi mai le tusitala
E masani ona ou faia se fonotaga mo tagata faigaluega fou i le autu "System Architecture". Matou te taʻua o le "Intro to Dodo IS Architecture" ma o se vaega o le onboarding process mo tagata atinaʻe fou. I le talanoa i se tasi ituaiga poʻo se isi e uiga i la matou fausaga, e uiga i ona foliga, na ou atiina ae ai se auala faʻasolopito i le faʻamatalaga.

I le masani ai, matou te vaʻavaʻai i se faiga o se seti o vaega (faʻainisinia poʻo le maualuga-tulaga), pisinisi pisinisi e fegalegaleai ma le tasi ma le isi e ausia ai se sini. Ma e ui lava o sea vaaiga e faʻamaonia mo le mamanu, e le fetaui lelei mo le faʻamatalaga ma le malamalama. E tele mafuaaga:

  • O le mea moni e ese mai mea o loʻo i luga o pepa. E le o manuia mea uma e pei ona fuafuaina. Ma matou te fiafia pe faʻapefea ona tupu mea uma ma galue.
  • Tuuina atu faifaipea o faʻamatalaga. O le mea moni, e mafai ona e alu fa'asologa mai le amataga i le tulaga o lo'o iai nei.
  • Mai le faigofie i le lavelave. E le lautele, ae i lo tatou tulaga e faapena. O fa'ata'ita'iga na si'itia mai auala faigofie i auala e sili atu ona lavelave. E masani lava, e ala i faʻalavelave, faʻafitauli o le faʻatinoina o le saoasaoa ma le mautu, faʻapea foʻi ma le tele o isi meatotino mai le lisi o mea e le faʻaaogaina (iinei talanoa lelei e uiga i le faʻatusatusaina o lavelave ma isi manaʻoga).

I le 2011, o le fausaga o le Dodo IS e pei o lenei:

Tala'aga o le Dodo IS Architecture: O le Ala i tua o le Ofisa

E oo atu i le 2020, ua fai si lavelave ma ua pei o lenei:

Tala'aga o le Dodo IS Architecture: O le Ala i tua o le Ofisa

Na faapefea ona tupu lenei evolusione? Aisea e manaomia ai vaega eseese o le faiga? O a filifiliga faufale na faia ma aisea? Se'i tatou su'esu'eina i lenei faasologa o tala.

O faʻafitauli muamua o le 2016: aisea e tatau ai ona tuʻua e auaunaga le monolith?

O tala muamua i le faasologa o le a faʻatatau i auʻaunaga na muamua vavae ese mai le monolith. Ina ia tuʻuina oe i le faʻamatalaga, o le a ou taʻuina atu ia te oe faʻafitauli na matou i ai i le faiga i le amataga o le 2016, na tatau ona matou feagai ma le vavaeeseina o auaunaga.

Se tasi MySql database lea na tusi uma ai tusi talosaga sa i ai i lena taimi i Dodo IS a latou faamaumauga. O taunuuga e faapea:

  • Uiga mamafa (ma le 85% o talosaga o loʻo faitauina).
  • Sa tuputupu ae le faavae. Ona o lea mea, na avea ai le tau ma le lagolago ma se mataupu.
  • Tulaga tasi o le toilalo. Afai e fa'afuase'i ona amata fa'agaoioia e se tasi tusi talosaga e tusi i fa'amaumauga, ona lagona lea e isi tusi talosaga le a'afiaga.
  • Le lelei i le teuina ma fesili. E masani lava o faʻamaumauga na teuina i nisi fausaga e faigofie mo nisi faʻaaliga ae le mo isi. Fa'asinomaga fa'avavevave nisi fa'agaioiga, ae mafai ona fa'agesegese isi.
  • O nisi o faʻafitauli na foʻia e ala i le faʻavaveina o faʻamaumauga ma faitau-faʻasologa i faʻamaumauga (o le a talanoaina i se isi tala), ae naʻo latou faʻatagaina i matou e maua le taimi ma e leʻi faʻavaeina le faʻafitauli.

O le faafitauli o le i ai o le monolith lava ia. O taunuuga e faapea:

  • Fa'asalalauga tulaga ese ma seasea.
  • O le faigata o le galulue faʻatasi o se numera tele o tagata.
  • Le mafai ona fa'alauiloa tekinolosi fou, fa'ava'a fou ma faletusi.

Faʻafitauli i le faavae ma le monolith ua faʻamatalaina i le tele o taimi, mo se faʻataʻitaʻiga, i le tulaga o faʻalavelave i le amataga o le 2018 (Ia pei o Munch, poʻo ni nai upu e uiga i aitalafu faʻapitoa, Le aso na tu ai Dodo IS. Fa'amatalaga asynchronous и O le tala i le manulele Dodo mai le aiga Phoenix. O le Pau Tele o le Dodo IS), o lea o le a ou le nofo tele ai. Se'i ou fai atu na matou manana'o e tu'uina atu le tele o fetu'una'iga pe a atia'e auaunaga. Muamua lava, o lenei mea e popole ai i latou na sili ona mamafa ma aʻa i le faiga atoa - Auth ma Tracker.

O le Ala i tua o le Ofisa: Tu'ufa'atasi ma Pasi

Mataupu Tautai

  1. Polokalame ole monolith 2016
  2. Ua amata ona matou la'u ese le monolith: vavaeeseina o le Auth ma le Tracker
  3. O le a le mea e fai e Auth?
  4. O fea e aumai ai uta?
  5. La'uina o le Auth
  6. O le a le mea e fai e Tracker?
  7. O fea e aumai ai uta?
  8. La'uina o le Tracker

Polokalame ole monolith 2016

O poloka autu nei o le 2016 Dodo IS monolith, ma o loʻo i lalo ifo o se faʻamavaega o latou galuega autu.
Tala'aga o le Dodo IS Architecture: O le Ala i tua o le Ofisa
Tilivaina kesi tupe. Accounting mo avefe'au, tu'uina atu o poloaiga i avefe'au.
Nofoaga fa'afeso'ota'i. Taliaina o poloaiga e ala i le fa'afoe.
nofoaga. O matou 'upega tafaʻilagi (dodopizza.ru, dodopizza.co.uk, dodopizza.by, ma isi).
auth. Au'aunaga fa'ataga ma fa'amaoniga mo le backoffice.
tagata su'esu'e. Su'e oka oka. Au'aunaga mo le makaina o tulaga sauni pe a saunia se oka.
Kesi tupe faleaiga. Tu'uina atu o oka i totonu o se fale'aiga, feso'ota'iga cashier.
faʻatau atu. Tuuina atu o lipoti i le 1C mo le tausitusi.
Fa'aliga ma pili. Fa'atonu leo ​​i le umukuka (mo se fa'ata'ita'iga, "Ua taunu'u mai le pizza fou") + lolomiina o pili mo avefe'au.
Pule Sili. Fesoʻotaʻiga mo le galuega a le pule o le sifi: lisi o faʻatonuga, siata o gaosiga, aumaia tagata faigaluega i sifi.
Pule Ofisa. Fesoʻotaʻiga mo le galuega a franchisees ma pule: taliaina o tagata faigaluega, lipoti i le galuega a le pizzeria.
Laupapa faleaiga. Fa'aali lisi i luga o TV ile pizzeria.
Pule. Faʻatonu mo se pizzeria faʻapitoa: lisi, tau, faʻamatalaga, faʻasalalauga faʻasalalauga, faʻalauiloa, fuʻa mo le saite, ma isi.
Teugatupe a le tagata faigaluega. Fa'asologa o galuega a tagata faigaluega, fa'amatalaga e uiga i tagata faigaluega.
Komiti Faufautua umukuka. O se lau ese'ese e tautau i le umukuka ma fa'aalia ai le saoasaoa o fai pizza.
fesoʻotaʻiga. Tuuina atu sms ma imeli.
FileStorage. Lava auaunaga mo le mauaina ma le tuʻuina atu o faila faʻamau.

O taumafaiga muamua e foia faafitauli na fesoasoani ia i matou, ae sa na o se malologa le tumau. E leʻi avea i latou ma fofo faʻapitoa, o lea na manino ai e tatau ona faia se mea i faʻavae. Mo se faʻataʻitaʻiga, vaevae le faʻamaumauga lautele i ni isi faʻapitoa faʻapitoa.

Ua amata ona matou la'u ese le monolith: vavaeeseina o le Auth ma le Tracker

O auaunaga autu na tusia ma faitau mai le database nai lo isi:

  1. Auth. Au'aunaga fa'ataga ma fa'amaoniga mo le backoffice.
  2. Su'e. Su'e oka oka. Au'aunaga mo le makaina o tulaga sauni pe a saunia se oka.

O le a le mea e fai e Auth?

O le Auth o se 'au'aunaga e fa'aoga ai tagata fa'aoga i le ofisa pito i tua (o lo'o i ai se saini tuto'atasi tuto'atasi ile itu ole kalani). O lo'o ta'ua fo'i i le talosaga ina ia mautinoa o lo'o iai aia tatau sa'o ma e le'i suia nei aia talu mai le saini mulimuli. O masini e ulufale atu i pizzeria e ala i ai.

Mo se faʻataʻitaʻiga, matou te mananaʻo e tatalaina se faʻaaliga ma le tulaga o faʻatonuga maeʻa i luga o le TV o loʻo tautau i totonu o le faletele. Ona matou tatalaina lea o le auth.dodopizza.ru, filifili le "Login as device", e aliali mai se code e mafai ona tuʻuina i totonu o se itulau faʻapitoa i luga o le komipiuta a le shift manager, e faʻaalia ai le ituaiga masini (mea faigaluega). O le TV lava ia o le a alu i le atinaʻe manaʻomia o lana pizzeria ma amata ona faʻaalia iina igoa o tagata faʻatau ua saunia a latou poloaiga.

Tala'aga o le Dodo IS Architecture: O le Ala i tua o le Ofisa

O fea e aumai ai uta?

O tagata uma e fa'aoga i tua e alu i le fa'amaumauga mo talosaga ta'itasi, i le laulau fa'aoga, toso ese le tagata fa'aoga mai iina e ala i se sql query ma siaki pe o ia te ia le avanoa talafeagai ma aia tatau i lenei itulau.

O masini ta'itasi e faia tutusa i le laulau masini, siaki lona matafaioi ma ona avanoa. O se numera tele o talosaga i le master database e taʻitaʻia ai lona utaina ma le faʻaumatia o punaoa faʻamaumauga lautele i luga o nei gaioiga.

La'uina o le Auth

Auth ei ai se vaega tuʻufua, o lona uiga, faʻamatalaga e uiga i tagata faʻaoga, logins poʻo masini e ulufale i le auaunaga (i le taimi nei i le lumanaʻi) ma tumau ai iina. Afai e manaʻomia e se tasi, o le a alu i lenei auaunaga mo faʻamatalaga.

SA. O le faagasologa o galuega na muamua e pei o lenei:

Tala'aga o le Dodo IS Architecture: O le Ala i tua o le Ofisa

Ou te fia faʻamatala itiiti pe faʻapefea ona aoga:

  1. O se talosaga mai fafo e sau i le pito i tua (Asp.Net MVC iina), ma aumai ai se kuki sauniga, lea e faʻaaogaina e maua mai ai faʻamatalaga o sauniga mai Redis(1). O lo'o i ai fa'amatalaga e uiga i avanoa, ona tatala lea o le avanoa i le pule (3,4), pe leai.
  2. Afai e leai se avanoa, e tatau ona e alu i le faiga faʻatagaina. O iinei, mo le faigofie, o loʻo faʻaalia o se vaega o le ala i le uiga tutusa, e ui lava o se suiga lea i le itulau saini. I le tulaga o se fa'aaliga lelei, o le a matou maua se sauniga fa'atumu sa'o ma alu i le Backoffice Controller.
  3. Afai ei ai faʻamatalaga, ona e manaʻomia lea e siaki mo le talafeagai i totonu o le faʻamaumauga a le tagata faʻaoga. Ua suia ea lana matafaioi, pe le tatau ona faatagaina o ia i luga o le itulau i le taimi nei? I lenei tulaga, pe a uma ona e mauaina le sauniga (1), e tatau ona e alu saʻo i le database ma siaki le avanoa o le tagata faʻaoga e faʻaaoga ai le faʻamaoniga faʻamaonia (2). Sosoo ai, pe alu i le itulau saini pe alu i le pule. O se faiga faigofie lea, ae le o se tulaga masani.
  4. Afai e maeʻa uma taualumaga, ona matou faaseʻe atili lea i le faʻatonuga i controllers ma metotia.

O faʻamatalaga a le tagata faʻaoga e tuʻueseese mai isi faʻamatalaga uma, o loʻo teuina i se laulau eseʻese sui auai, o galuega mai le AuthService logic layer e mafai ona avea ma auala API. O tuaoi o le vaega o loʻo faʻamalamalamaina manino: tagata faʻaoga, o latou matafaioi, faʻamatalaga avanoa, tuʻuina atu ma faʻaleaogaina le avanoa. O mea uma e foliga mai e mafai ona fa'anofo i se isi auaunaga.

AVEA. O le mea lena na latou faia:

Tala'aga o le Dodo IS Architecture: O le Ala i tua o le Ofisa

O lenei faiga e tele fa'afitauli. Mo se faʻataʻitaʻiga, o le valaʻau o se metotia i totonu o se faʻagasologa e le tutusa ma le valaʻau i se auaunaga i fafo e ala i le http. Latency, fa'atuatuaina, lagolago, ma le manino o le gaioiga e matua'i ese lava. Na saunoa atili Andrey Morevsky e uiga i nei faafitauli i lana lipoti "50 ata o microservices".

O le auaunaga faʻamaonia ma faʻatasi ai ma le auaunaga masini e faʻaaogaina mo le ofisa i tua, o lona uiga, mo auaunaga ma fesoʻotaʻiga faʻaaogaina i le gaosiga. O le fa'amaoni mo auaunaga a tagata o tausia (e pei o se upega tafa'ilagi po'o se telefoni feavea'i) e tupu fa'atasi e aunoa ma le fa'aogaina o le Auth. O le teteʻa e tusa ma le tausaga, ma o lea ua matou toe galulue i lenei autu, faʻafeiloaʻi le faiga i auaunaga fou faʻamaonia (faʻatasi ai ma faʻamaumauga masani).

Aisea na umi ai le tuueseeseina?
E tele faʻafitauli i le ala na faʻagesegese ai i matou:

  1. Matou te mananaʻo e faʻafeiloaʻi faʻamatalaga e uiga i tagata faʻaoga, masini ma faʻamaoniga mai faʻamaumauga a le atunuʻu i le tasi. Ina ia faia lenei mea, e tatau ona matou faʻafeiloaʻi laulau uma ma faʻaoga mai le int identifier i le lalolagi UUId identifier (na matou toe faʻafouina talu ai nei lenei code. Roman Bukin "Uuid - o le tala tele o se tamai fausaga" ma tatala-puna galuega Ulua'i). O le teuina o faʻamatalaga a tagata faʻaoga (talu ai o faʻamatalaga patino lea) e iai ona tapulaʻa ma mo nisi atunuʻu e manaʻomia le teuina eseese. Ae e tatau ona i ai se ID tagata faʻaoga lalolagi.
  2. O le tele o laulau i totonu o faʻamaumauga o loʻo i ai faʻamatalaga suʻega e uiga i le tagata faʻaoga na faia le taotoga. O lenei mea e manaʻomia ai se masini faʻaopoopo e faʻamautinoa ai le tumau.
  3. Ina ua maeʻa le fausiaina o auaunaga API, sa i ai se taimi umi ma faasolosolo malie o le fesiitaiga i se isi faiga. Suiga e tatau ona tupu lemu mo tagata faʻaoga ma manaʻomia galuega tusilima.

Fuafuaga mo le resitalaina o se masini i se pizzeria:

Tala'aga o le Dodo IS Architecture: O le Ala i tua o le Ofisa

Fa'ata'ita'iga lautele pe a uma ona tu'u 'ese'ese Auth and Devices service:

Tala'aga o le Dodo IS Architecture: O le Ala i tua o le Ofisa

mataʻi. Mo le 2020, o loʻo matou galulue i se faʻamatalaga fou o le Auth, lea e faʻavae i luga o le tulaga faʻatagaina o le OAuth 2.0. O lenei tulaga e fai si lavelave, ae aoga mo le atina'eina o se auaunaga fa'amaoni pito i tua. I le tusiga "Fa'amatalaga o fa'atagaga: va'aiga lautele o tekinolosi OAuth 2.0» matou Alexey Chernyaev taumafai e talanoa e uiga i le faʻataʻitaʻiga i le faigofie ma le manino e mafai ai ina ia e faʻaalu se taimi i le suʻesuʻeina.

O le a le mea e fai e Tracker?

Lenei e uiga i le lona lua o auaunaga utaina. O le tracker e faia se vaega lua:

  • I le tasi itu, o lana galuega o le faʻaali atu i tagata faigaluega i le umukuka poʻo a ni faʻatonuga o loʻo faagasolo nei, o a oloa e manaʻomia ona saunia nei.
  • I le isi itu, fa'atekinolosi faiga uma i totonu o le umukuka.

Tala'aga o le Dodo IS Architecture: O le Ala i tua o le Ofisa

A aliali mai se oloa fou (mo se faʻataʻitaʻiga, pizza) i se faʻatonuga, e alu i le "Rolling" tracker station. I lenei nofoaga o loʻo i ai se fai pizza na te aveina se paluga e manaʻomia ma taʻavale i fafo, a maeʻa ona ia faʻailogaina i luga o le tracker tablet ua maeʻa lana galuega ma pasi atu le paluga paluga faʻavae i le isi nofoaga - "Faʻatumu" .

O iina, o le isi fai pizza e pito i luga le pizza, ona faailoga lea i luga o le laulau ua maeʻa lana galuega ma tuʻu le pizza i totonu o le ogaumu (o se isi foi nofoaga e manaʻomia ona makaina i luga o le laulau). O sea faiga sa i ai mai lava i le amataga i Dodo ma mai lava i le amataga o Dodo IS. E fa'atagaina oe e siaki atoa ma fa'atekinolosi gaioiga uma. E le gata i lea, o loʻo fautua mai le tracker pe faʻapefea ona saunia se oloa faʻapitoa, faʻatinoina ituaiga taʻitasi o oloa e tusa ai ma ana lava faiga gaosiga, teuina le taimi sili ona lelei e kuka ai le oloa, ma siaki uma gaioiga i luga o le oloa.

Tala'aga o le Dodo IS Architecture: O le Ala i tua o le OfisaO le mea lea e foliga mai ai le lau laulau i le nofoaga e siaki ai Raskatka.

O fea e aumai ai uta?

O pizzeria ta'itasi e tusa ma le lima papama'a ma se tracker. I le 2016 na sili atu nai lo le 100 pizzerias (ma o lea ua sili atu i le 600). O papa taʻitasi e faia se talosaga i le pito i tua i le 10 sekone ma aoina faʻamatalaga mai le laulau oka (fesoʻotaʻi ma le kalani ma le tuatusi), le faʻatulagaina o le faʻatonuga (fesoʻotaʻi ma le oloa ma le faʻaalia o le aofaʻi), ma le laulau faʻamalosi (e siaki. le taimi o le fetaomi). A kiliki e se fai pizza se oloa i luga o le tracker, o faʻamaumauga i nei laulau uma e faʻafouina. O le laulau fa'atonu e lautele; o lo'o i ai i le taimi lava e tasi fa'apipi'i pe a talia se fa'atonuga, fa'afouga mai isi vaega o le faiga, ma le tele o faitauga, mo se fa'ata'ita'iga, i luga o se TV o lo'o tautau i totonu o le pizzeria ma fa'aalia ai ni fa'atonuga ua saunia i tagata fa'atau.

I le vaitau o tauiviga ma uta, pe a faʻapipiʻi mea uma ma tagata uma ma faʻafeiloaʻi i se faʻataʻitaʻiga asynchronous o le database, o nei gaioiga ma le tracker na faʻaauau pea ona alu i le master database. E le tatau ona i ai se tuai iinei, o faʻamaumauga e tatau ona faʻafouina, e le mafai ona talia.

E le gata i lea, o le leai o ni a matou lava laulau ma fa'ailoga i luga na le mafai ai ona matou tusia ni fesili fa'apitoa e fa'atatau mo lo matou fa'aoga. Mo se faʻataʻitaʻiga, atonu e aoga mo se tagata suʻesuʻe le i ai o se faasino igoa mo se pizzeria i luga o lana laulau oka. Matou te va'aia pea oka pizzeria mai le tracker database. I le taimi lava e tasi, ina ia talia se poloaiga, e le taua tele le pizzeria e pa'ū i totonu, o le mea e sili atu ona taua o le tagata na faia lenei poloaiga. O lona uiga e tatau ona i ai se faasino igoa ile tagata o tausia. E le tatau foi i le tracker ona teuina le id o le lisiti lolomi po o faʻasalalauga ponesi e fesoʻotaʻi ma le faʻatonuga i le laulau oka. E le fiafia la matou 'au'aunaga tracker i nei fa'amatalaga. I se fa'amaumauga masani monolithic, o laulau e na'o se fetuutuuna'i i le va o tagata fa'aoga uma. O se tasi lea o faafitauli muamua.

SA. I le taimi muamua, o le fausaga e pei o lenei:

Tala'aga o le Dodo IS Architecture: O le Ala i tua o le Ofisa

E tusa lava pe ua uma ona vavaeeseina i faiga eseese, o le tele o le code base na tumau pea le masani i auaunaga eseese. O mea uma i lalo ole pule na tu'ufa'atasia ma nonofo i totonu o le fale e tasi. O auala masani o auaunaga, fale teu oloa, ma se faʻamaumauga masani o loʻo i ai laulau masani na faʻaaogaina.

La'uina o le Tracker

O le fa'afitauli autu i le tracker e tatau ona fa'amaopoopo fa'amaumauga i le va o fa'amaumauga eseese. O lona eseesega tele foi lea mai le vaevaega o le Auth service; o le poloaiga ma lona tulaga e mafai ona suia ma e tatau ona faʻaalia i auaunaga eseese.

Matou te talia faʻatonuga i le Faleaiga Checkout (o se tautua), o loʻo teuina i totonu o faʻamaumauga i le tulaga "Talia". A maeʻa lena, e tatau ona alu i le tracker, lea o le a suia ai lona tulaga i le tele o taimi: mai le "Kitchen" i le "Packed". I lenei tulaga, o nisi o aʻafiaga mai fafo mai le Cashier poʻo le Shift Manager e mafai ona tupu i le faʻatonuga. O le a ou tuʻuina atu tulaga faʻatonu ma a latou faʻamatalaga i le laulau:

Tala'aga o le Dodo IS Architecture: O le Ala i tua o le Ofisa
Ole faiga ole suiga ole tulaga ole oka e fa'apea:

Tala'aga o le Dodo IS Architecture: O le Ala i tua o le Ofisa

E sui tulaga i le va o faiga eseese. Ma o iinei o le tracker e le o le faiga mulimuli lea e loka ai faʻamatalaga. Ua matou vaʻai i le tele o auala e mafai ai ona teteʻa i se tulaga faʻapea:

  1. Matou te faʻatumauina uma gaioiga faʻatonu i le tasi auaunaga. I la matou tulaga, o lenei filifiliga e manaʻomia ai le tele o auaunaga e faʻatautaia ai le faʻatonuga. Ana matou tu ai iina, semanu matou te iu i se monolith lona lua. Semanu matou te le foiaina faafitauli.
  2. O le tasi faiga e valaau atu i le isi. O le filifiliga lona lua e sili atu ona manaia. Ae faʻatasi ai, filifili o telefoni e mafai (fa'aletonu fa'asolosolo), o le fesoʻotaʻiga o vaega e maualuga atu, ma e sili atu ona faigata ona pulea.
  3. Matou te faʻatulagaina mea faʻapitoa, ma fefaʻasoaaʻi auaunaga taʻitasi ma le isi e ala i nei mea. O se taunuuga, o le filifiliga lona tolu na filifilia, e tusa ai ma auaunaga uma e amata ona fesuiai mea na tutupu i le tasi ma le isi.

O le mea moni na matou filifilia le filifiliga lona tolu o lona uiga o le tracker o le ai ai sana lava faʻamaumauga, ma mo suiga uma i le faʻatonuga o le a tuʻuina atu se mea na tupu e uiga i lenei mea, lea o le a faʻapipiʻi ai isi auʻaunaga ma o le a aofia ai foi i le master database. Ina ia faia lenei mea, matou te manaʻomia se auaunaga e faʻamautinoa ai le tuʻuina atu o feʻau i le va o auaunaga.

E oo atu i lena taimi, ua uma ona i ai le RabbitMQ i le faaputuga, o le mea lea o le faaiuga mulimuli e faʻaaogaina e fai ma faifeʻau feʻau. O le ata o loʻo faʻaalia ai le suiga o se faʻatonuga mai le Restaurant Cashier e ala i le Tracker, lea e suia ai lona tulaga ma lona faʻaaliga i luga o le Pule's Orders interface. AVEA:

Tala'aga o le Dodo IS Architecture: O le Ala i tua o le Ofisa

Fa'atonu le ala i lea la'asaga
O le ala oka e amata i se tasi o au'aunaga puna'oa. O le Fale'aiga Cashier lea:

  1. Ua saunia atoatoa le fa'atonuga i le Checkout, ma ua o'o i le taimi e lafo ai i le tracker. O le mea na tupu o loʻo lesitala ai le tracker e lafo.
  2. O le tracker, talia se faʻatonuga, faʻasaoina i totonu o lana lava database, faia le "Order Accepted by Tracker" mea na tupu ma auina atu i le RMQ.
  3. O nisi o aufaipisinisi ua uma ona fa'aulu i le pasi fa'apitoa. Mo i matou, e taua le mea e faʻafetaui ma le monolithic database.
  4. E maua e le tagata faʻatautaia le mea na tupu, filifili mai ai faʻamatalaga e taua tele mo ia: i la matou tulaga, o le tulaga lea o le faʻatonuga "Accepted by Tracker" ma faʻafouina lana faʻatonuga i totonu o le database autu.

Afai e manaʻomia e se tasi se faʻatonuga faʻapitoa mai le laulau monolithic orders, ona mafai lea ona latou faitau mai ai foi. Mo se faʻataʻitaʻiga, o le mea lea e manaʻomia e le Orders interface i le Shift Manager:

Tala'aga o le Dodo IS Architecture: O le Ala i tua o le Ofisa

O isi au'aunaga uma e mafai foi ona lesitala e fa'atonu mea na tutupu mai le tracker ina ia fa'aaogaina mo i latou lava.

Afai a maeʻa sina taimi e ave ai se faʻatonuga i le gaosiga, o lona tulaga muamua e suia i lona faʻamaumauga (Tracker database), ona faʻatupuina loa lea o le "OrderInWork". E oʻo atu foʻi i totonu o le RMQ, mai le mea e tuʻufaʻatasia i totonu o se faʻamaumauga monolithic ma tuʻuina atu i isi auaunaga. Atonu e iai faʻafitauli eseese i luga o lenei ala; o nisi faʻamatalaga e uiga ia i latou e mafai ona maua i le lipoti a Zhenya Peshkov e uiga i faʻamatalaga faʻatinoga o le Faʻasalaga Mulimuli i le Tracker.

Fa'ata'ita'iga mulimuli pe a mae'a suiga ile Auth ma le Tracker

Tala'aga o le Dodo IS Architecture: O le Ala i tua o le Ofisa

I se aotelega: I le taimi muamua, sa i ai loʻu manatu e faʻapipiʻi le talafaasolopito o le iva tausaga o le Dodo IS system i totonu o se tala e tasi. Na ou manaʻo e vave ma faigofie ona talanoa e uiga i laʻasaga o le evolusione. Ae ui i lea, ina ua ou nofo i lalo e suʻesuʻe mea, na ou iloa ai o mea uma e sili atu ona faigata ma manaia nai lo le mea e foliga mai.

I le mafaufau i faʻamanuiaga (poʻo le leai o se mea) o ia mea, na ou oʻo mai ai i le faʻaiuga o le faʻaauau pea o le atinaʻe e le mafai e aunoa ma faʻamaumauga atoa o mea na tutupu, faʻamatalaga auiliili ma auiliiliga o faaiuga a se tasi ua tuanai.

Ou te faʻamoemoe na e iloa e aoga ma manaia le aʻoaʻoina e uiga i la matou faigamalaga. O lea ua ou feagai ma se filifiliga po o le fea vaega o le Dodo IS system e faʻamatalaina i le isi tusiga: tusi i faʻamatalaga pe palota.

Na'o tagata fa'aigoaina e mafai ona auai i le su'esu'ega. Saini ese j, faʻamolemole.

O le a le vaega o le Dodo IS e te manaʻo e aʻoaʻoina i le isi mataupu?

  • 24,1%Monolith muamua i Dodo IS (2011-2015)14

  • 24,1%Fa'afitauli muamua ma o latou fofo (2015-2016)14

  • 20,7%Auala o le vaega o tagata o tausia: mata i luga a'e o le faavae (2016-2017)12

  • 36,2%Tala'aga o microservices moni (2018-2019)21

  • 44,8%Ua mae'a le tipiina o le monolith ma le fa'amautuina o le fausaga26

  • 29,3%E uiga i nisi fuafuaga mo le atinaeina o le faiga17

  • 19,0%Ou te le fia iloa se mea e uiga i Dodo IS11

58 tagata fa'aoga na palota. 6 tagata fa'aoga na le fa'aaogaina.

puna: www.habr.com

Faaopoopo i ai se faamatalaga