Tala'aga o le Dodo IS Architecture: Ose Monolith Muamua

Po o kamupani le fiafia uma ma se monolith e le fiafia i lana lava auala.

O le atinaʻeina o le Dodo IS system na amata vave, pei o le Dodo Pizza pisinisi, i le 2011. Na faʻavae i luga o le manatu o le atoatoa ma le numera atoa o faiga pisinisi, ma i latou lava, lea e oo lava i le 2011 na mafua ai le tele o fesili ma masalosaloga. Ae mo le 9 tausaga o loʻo matou mulimuli i lenei ala - ma a matou lava atinaʻe, lea na amata i se monolith.

O lenei tusiga o se "tali" i fesili "Aisea e toe tusia ai le fausaga ma faia ni suiga tetele ma umi?" toe foʻi i le mataupu muamua "Talafaasolopito o le Dodo IS Architecture: Le Ala o le Ofisa i tua". O le a ou amata i le auala na amata ai le atinaʻeina o le Dodo IS, pe faʻapefea ona foliga mai le uluai fausaga, faʻafefea ona faʻaalia ni modules fou, ma ona o a ni faʻafitauli tetele na tatau ona faia.

Tala'aga o le Dodo IS Architecture: Ose Monolith Muamua

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

  1. Monolith muamua i Dodo IS (2011-2015). (o oe iinei)

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

  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...)

Ulua'i fausaga

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

Tala'aga o le Dodo IS Architecture: Ose Monolith Muamua

O le vaega muamua i le fausaga o le taliaina o poloaiga. O le faiga pisinisi sa:

  • vili e le kalani le pizzeria;

  • e piki e le pule le telefoni;

  • talia se fa'atonuga ile telefoni;

  • faʻatumu tutusa i le faʻatonuga faʻafeiloaʻiga faʻaoga: e faʻatatau i faʻamatalaga e uiga i le kalani, faʻamatalaga i faʻamatalaga o faʻatonuga, tuatusi tuʻuina atu. 

O le faʻaogaina o le faʻamatalaga faʻamatalaga e pei o lenei ...

Muamua lomiga mai Oketopa 2011:

Fa'aleleia teisi ia Ianuari 2012

Dodo Pizza Fa'amatalaga Fa'amatalaga Fa'ata'ita'iga Pizza Fale'aiga

O punaoa mo le atinaʻeina o le faʻatonuga muamua o le aveina o le module sa faʻatapulaʻaina. E tele mea e tatau ona matou faia, vave ma faʻatasi ma se 'au toʻaitiiti. O se 'au toʻaitiiti o le 2 atinaʻe na faʻavaeina le faavae mo le faiga atoa i le lumanaʻi.

O la latou filifiliga muamua na fuafua ai le taunuuga o le faaputuga tekinolosi:

  • I tua ile ASP.NET MVC, gagana C#. O le au atiae o dotnetchiki, o lenei faaputuga sa masani ma manaia ia i latou.

  • Frontend i luga o Bootstrap ma JQuery: faʻaoga faʻaoga i luga o sitaili tusitusi ma tusitusiga. 

  • MySQL database: leai se tau laisene, faigofie ona faʻaoga.

  • Servers i luga o le Windows Server, aua o le .NET e mafai ona i ai i lalo ole Windows (tatou te le talanoaina Mono).

Faʻaletino, o nei mea uma na faʻaalia i le "dedic at the hoster". 

Fa'atonuga Fa'aaogā Fa'atonu Fa'atonu

Ona talanoa ai lea o tagata uma e uiga i microservices, ma sa faʻaaogaina le SOA i galuega tetele mo le 5 tausaga, mo se faʻataʻitaʻiga, na faʻasaʻolotoina le WCF i le 2006. Ae na latou filifilia se fofo faatuatuaina ma faamaonia.

O lea la.

Tala'aga o le Dodo IS Architecture: Ose Monolith Muamua

Asp.Net MVC o le Razor, lea, pe a talosagaina mai se fomu poʻo mai se tagata o tausia, e tuʻuina atu se itulau HTML ma le tuʻuina atu o le server. I luga o le kalani, CSS ma JS scripts ua uma ona faʻaalia faʻamatalaga ma, pe a manaʻomia, fai talosaga AJAX e ala i le JQuery.

Talosaga i luga o le 'auʻaunaga e faʻaiʻu i vasega * Pule, lea e faia ai le gaioiga ma le faʻatulagaina o le itulau HTML mulimuli i le auala. E tu'uina atu e le au fa'atonu ni talosaga i se vaega o manatu e ta'ua o *Au'aunaga. O 'au'aunaga ta'itasi e fetaui ma nisi vaega o le pisinisi:

  • Mo se faʻataʻitaʻiga, DepartmentStructureService na tuʻuina atu faʻamatalaga e uiga i pizzeria, i matagaluega. O le matagaluega o se vaega o pizzeria o loʻo faʻatautaia e se tasi le franchisee.

  • ReceivingOrdersService talia ma fuafua le fa'atulagaina o le oka.

  • Ma SmsService auina atu SMS e ala i le valaau API auaunaga e lafo SMS.

Au'aunaga fa'atautaia fa'amaumauga mai le fa'amaumauga, fa'apolopolo pisinisi fa'atau. O auaunaga ta'itasi e tasi pe sili atu *Repositories ma le igoa talafeagai. Ua uma ona iai fa'amatalaga i fa'agaioiga teuina i totonu o fa'amaumauga ma se vaega o fa'afanua. Sa i ai faʻamatalaga pisinisi i totonu o mea e teu ai, aemaise lava le tele o mea na tuʻuina atu faʻamatalaga lipoti. E leʻi faʻaaogaina le ORM, na faʻalagolago tagata uma ile sql tusilima. 

Sa i ai foi se vaega o le faʻataʻitaʻiga faʻataʻitaʻiga ma vasega fesoasoani masani, mo se faʻataʻitaʻiga, le vasega Poloaiga na teuina le faʻatonuga. I le nofoaga lava e tasi, i totonu o le laulau, sa i ai se fesoasoani mo le faaliliuina o le faʻaaliga o tusitusiga e tusa ai ma le tupe filifilia.

O nei mea uma e mafai ona faʻatusalia e se faʻataʻitaʻiga:

Tala'aga o le Dodo IS Architecture: Ose Monolith Muamua

Fa'atonu auala

Mafaufau i se auala faigofie muamua e fai ai se fa'atonuga faapena.

Tala'aga o le Dodo IS Architecture: Ose Monolith Muamua

I le taimi muamua, o le saite sa tumau. Sa i ai tau i luga, ma luga - o se numera telefoni ma le faʻamatalaga "Afai e te manaʻo i pizza - valaʻau le numera ma faʻatonu." Ina ia fa'atonu, e mana'omia le fa'atinoina o se fa'agasolo faigofie: 

  • E asiasi le tagata o tausia i se nofoaga tumau ma tau, filifili oloa ma valaau le numera o loʻo lisiina i luga o le saite.

  • E ta'u e le tagata fa'atau oloa latou te mana'o e fa'aopoopo i le fa'atonuga.

  • Tuuina mai lona tuatusi ma lona igoa.

  • E talia e le fa'afoe le fa'atonuga.

  • O le fa'atonuga o lo'o fa'aalia i totonu o le fa'atonuga fa'afeiloa'i.

E amata uma i le faʻaalia o le lisi. E na'o le tasi le fa'atonuga e talia e le tagata fa'aoga-tagata fa'aoga i totonu. O le mea lea, e mafai ona teuina le faʻataʻitaʻiga faʻataʻavalevale i lana sauniga (o loʻo teuina i le mafaufau le sauniga a le tagata faʻaoga). O loʻo i ai se mea faʻataʻavalevale o loʻo i ai oloa ma faʻamatalaga faʻatau.

E ta'u e le tagata fa'atau le oloa, kiliki le tagata fa'afoe + i tafatafa o le oloa, ma o se talosaga e auina atu i le server. O fa'amatalaga e uiga i le oloa e toso ese mai le fa'amaumauga ma fa'amatalaga e uiga i le oloa e fa'aopoopo i le fata.

Tala'aga o le Dodo IS Architecture: Ose Monolith Muamua

mataʻi. Ioe, iinei e le mafai ona e tosoina le oloa mai le faʻamaumauga, ae faʻafeiloaʻi mai le pito i luma. Ae mo le manino, na ou faʻaalia tonu le ala mai le database. 

Sosoo ai, fa'aofi le tuatusi ma le igoa ole kalani. 

Tala'aga o le Dodo IS Architecture: Ose Monolith Muamua

A e kiliki i le "Create Order":

  • O le talosaga e lafo i OrderController.SaveOrder().

  • Matou te maua le faʻataʻavalevale mai le sauniga, o loʻo i ai oloa i le aofaʻi matou te manaʻomia.

  • Matou te faʻaopoopoina le Cart ma faʻamatalaga e uiga i le kalani ma pasi atu i le AddOrder method of the ReceivingOrderService class, lea e teu ai i le database. 

  • O le database o loʻo i ai laulau ma le faʻatonuga, le tuʻufaʻatasia o le faʻatonuga, le tagata o tausia, ma e fesoʻotaʻi uma.

  • O le fa'asologa fa'aaliga fa'atonu e alu ma toso mai fa'atonuga fou ma fa'aalia.

Module fou

O le faia o le poloaiga sa taua ma tatau. E le mafai ona e faia se pisinisi pizza pe afai e leai sau poloaiga e faatau atu. O le mea lea, na amata ona maua e le faiga faʻatinoga - pe a ma le 2012 i le 2015. I le taimi lea, e tele poloka eseese o le polokalama na faʻaalia, lea o le a ou valaʻau modules, e fa'afeagai ma le manatu o le tautua po'o le oloa. 

O se module o se seti o galuega tauave e tuʻufaʻatasia e nisi o sini masani pisinisi. I le taimi lava e tasi, o loʻo i ai i le tino i le faʻaoga tutusa.

Module e mafai ona taʻua poloka poloka. Mo se faʻataʻitaʻiga, o le lipoti lea o le module, admin interfaces, siaki meaai i le umukuka, faatagaga. O fa'aoga eseese uma ia, o nisi e iai fo'i sitaili va'aia eseese. I le taimi lava e tasi, o mea uma o loʻo i totonu o le faʻavae o le tasi talosaga, tasi le faagasologa o le taʻavale. 

Faʻapitoa, o modules na mamanuina e pei o le Area (o sea manatu na tumau pea i totonu asp.net autu). Sa i ai faila eseese mo le pito i luma, faʻataʻitaʻiga, faʻapea foʻi ma a latou lava vasega pule. O se taunuuga, na suia le faiga mai lenei ...

Tala'aga o le Dodo IS Architecture: Ose Monolith Muamua

...i totonu o lenei:

Tala'aga o le Dodo IS Architecture: Ose Monolith Muamua

O nisi modules e faʻatinoina i nofoaga eseese (poloketi faʻatinoina), ona o se galuega faʻapitoa ma se vaega ona o se atinaʻe teisi ese, sili atu ona taulaʻi. Lenei:

  • nofoaga - lomiga muamua nofoaga dodopizza.ru.

  • faʻatau atu: lafoina o lipoti mai Dodo IS mo le 1C. 

  • patino - tala patino a le tagata faigaluega. Na fa'atupuina fa'atasi ma e iai lona lava nofoaga e ulufale ai ma le fa'ata'atia ese.

  • fs - o se poloketi mo le talimalo statics. Mulimuli ane na matou o ese mai ai, ma ave uma statics i le Akamai CDN. 

O isi poloka sa i totonu o le BackOffice application. 

Tala'aga o le Dodo IS Architecture: Ose Monolith Muamua

Fa'amatalaga igoa:

  • Cashier - Talitupe faleaiga.

  • ShiftManager - fesoʻotaʻiga mo le "Shift Manager" matafaioi: faʻamaumauga faʻagaioiga i luga o faʻatauga pizzeria, le mafai ona tuʻu oloa ile lisi taofi, suia le faʻatonuga.

  • OfficeManager - feso'ota'iga mo le "Pizzeria Manager" ma le "Franchisee" matafaioi. O loʻo aoina galuega mo le faʻatulagaina o se pizzeria, ona faʻalauiloa ponesi, mauaina ma galulue ma tagata faigaluega, lipoti.

  • PublicScreens - feso'ota'iga mo TV ma papamaa o lo'o tautau i pizzeria. Tele fa'aalia menus, fa'amatalaga fa'asalalauga, tulaga oka pe a tu'uina atu. 

Sa latou fa'aogaina se fa'a'au'aunaga masani, se poloka masani a le vasega o Dodo.Core, ma se fa'avae masani. O nisi taimi e mafai lava ona latou taitai atu i suiga o le tasi i le isi. E aofia ai nofoaga taʻitasi, e pei o le dodopizza.ru poʻo le personal.dodopizza.ru, na alu i auaunaga lautele.

Ina ua fa'aalia ni fa'aoga fou, sa matou taumafai e toe fa'aoga le code of services ua uma ona faia, fa'aputu fa'asologa ma laulau i totonu o fa'amaumauga i le maualuga. 

Mo se malamalamaga sili atu i le fua o modules na faia i totonu o le faiga, o le ata lenei mai le 2012 ma fuafuaga tau atinaʻe:

Tala'aga o le Dodo IS Architecture: Ose Monolith Muamua

E oʻo atu i le 2015, o mea uma na i luga o le faʻafanua ma sili atu i le gaosiga.

  • O le taliaina o poloaiga ua tupu i se poloka ese o le Nofoaga Fa'afeso'ota'i, lea e talia ai le fa'atonuga e le fa'afoe.

  • Sa i ai fa'asalalauga fa'alaua'itele ma lisi ma fa'amatalaga o lo'o tautau i pizzeria.

  • O le umukuka o loʻo i ai se module e otometi lava ona taʻalo le leo o le "Pizza Fou" pe a oʻo mai se poloaiga fou, ma lolomi foi se pili mo le avefeʻau. O lenei mea e matua faafaigofieina ai faiga i totonu o le umukuka, e mafai ai e tagata faigaluega ona le faʻalavelaveina i le tele o gaioiga faigofie.

  • O le vaega o le tiliva na avea ma Delivery Checkout ese, lea na tuʻuina atu ai le poloaiga i le avefeʻau na ave muamua le sifi. O lona taimi faigaluega sa fa'atatau mo le fa'atatauina o totogi. 

I se tulaga tutusa, mai le 2012 i le 2015, e sili atu i le 10 atinaʻe na faʻaalia, 35 pizzerias na tatalaina, faʻapipiʻi le faiga i Romania ma saunia mo le tatalaina o faleoloa i le Iunaite Setete. Ua le toe tagofia e le au atinaʻe galuega uma, ae ua vaevaeina i ni 'au. ta'itasi fa'apitoa i lana lava vaega o le faiga. 

Faʻafitauli

E aofia ai ona o le fausaga (ae le gata).

Le vevesi i le faavae

E faigofie le tasi faavae. E mafai ona ausia le faʻamaoni i totonu, ma i le faʻaaluina o meafaigaluega e fausia i totonu o faʻamaumauga fesoʻotaʻiga. O le galue faʻatasi e masani ma faigofie, aemaise lava pe a itiiti ni laulau ma faʻamatalaga laiti.

Ae i luga o le 4 tausaga o le atinaʻe, o le database na maua e tusa ma le 600 laulau, 1500 faʻasologa o loʻo teuina, o le tele o ia mea e iai foi le faʻatatau. Talofa e, o faʻatonuga faʻapipiʻi e le maua ai se aoga tele pe a galue ma MySQL. E le'o fa'apolopolo e le fa'avae, ma o le teuina o manatu i totonu e fa'alavelaveina ai le atina'e ma le fa'aleaga. E faigata fo'i le toe fa'aogaina o code.

E tele laulau e le'i iai ni fa'ailoga talafeagai, i se mea, i se isi itu, sa i ai le tele o faʻamatalaga, lea na faigata ai ona faʻaofi. Sa tatau ona suia pe a ma le 20 laulau - o le fefaʻatauaʻiga e fai ai se faʻatonuga e mafai ona alu ile 3-5 sekone. 

O faʻamaumauga i luga o laulau e leʻi i ai i taimi uma i le tulaga sili ona talafeagai. I se mea sa tatau ai ona fai le denormalization. O se vaega o faʻamaumauga masani na maua i totonu o se koluma i foliga o se fausaga XML, o lenei mea na faʻateleina ai le taimi o le faʻatinoga, faʻaumiumi fesili ma faʻalavelave le atinaʻe.

I luga o laulau lava e tasi na gaosia tele talosaga eseese. O laulau taʻutaʻua na pagatia faapitoa, pei o le laulau o loʻo taʻua i luga. poloaiga po o laulau Faleoloa pizza. Na faʻaaogaina e faʻaalia ai fesoʻotaʻiga faʻaogaina i le umukuka, auiliiliga. Na fa'afeso'ota'i i latou e se isi saite (dodopizza.ru), lea i soo se taimi e mafai ona faʻafuaseʻi ona oʻo mai le tele o talosaga. 

E le'i tu'ufa'atasia fa'amaumauga ma le tele o faʻatusatusaga na faia i luga o le lele e faʻaaoga ai le faʻavae. O lenei mea na faia ai faʻatusatusaga le manaʻomia ma uta faʻaopoopo. 

E masani ona alu le code i le database pe a le mafai ona faia. I se mea e le lava le tele o gaioiga, o se mea e tatau ona faʻasalalau se tasi talosaga i nisi e ala i le code ina ia faʻavavevave ma faʻateleina le faʻamaoni. 

Tu'ufa'atasi ma fa'alavelave i fa'ailoga

Module sa tatau ona nafa ma a latou vaega o le pisinisi e leʻi faia ma le faamaoni. O nisi oi latou sa toe faaluaina galuega mo matafaioi. Mo se faʻataʻitaʻiga, o se maketi faʻapitonuʻu o loʻo nafa ma le faʻatautaia o fefaʻatauaʻiga i totonu o lona taulaga e tatau ona faʻaogaina uma le "Admin" interface (e fatu ai faʻalauiloa) ma le "Office Manager" interface (e vaʻai i le aʻafiaga o faʻasalalauga i luga o pisinisi). Ioe, i totonu o modules uma e lua na faʻaogaina ai le auaunaga lava e tasi na galulue faʻatasi ma faʻalauiloa ponesi.

Au'aunaga (vasega i totonu o le tasi monolithic poloketi tetele) e mafai ona vala'au le tasi i le isi e fa'atamaoaigaina a latou fa'amaumauga.

Faatasi ai ma vasega faʻataʻitaʻi latou lava e teuina faʻamaumauga, galuega i totonu o le tulafono sa faia ese. I se mea sa i ai tagata faufale na mafai ai ona faʻamaonia fanua manaʻomia. O se mea na faia lea e ala i meatotino a le malo. O le mea moni, o le mauaina ma le suia o faʻamatalaga mai le database sa eseese. 

O le manatu sa i totonu o le pule poʻo totonu o vasega tautua. 

E foliga mai o ni fa'afitauli laiti, ae na matua fa'agesegese le atina'e ma fa'aitiitia le lelei, e o'o atu ai i le le mautu ma fa'aletonu. 

Le lavelave o se atinae tele

Sa tulai mai faigata i le atinae lava ia. Sa tatau ona faia ni poloka eseese o le faiga, ma tutusa. O le fa'apipi'iina o mana'oga o vaega ta'itasi i se fa'ailoga se tasi na fa'atupuina le faigata. Sa le'i faigofie ona malilie ma fa'amalie vaega uma i le taimi e tasi. Faʻaopoopo i lenei mea na faʻatapulaʻaina i tekinolosi, aemaise lava i le faʻavae ma le pito i luma. Sa tatau ona lafoaia le jQuery agai i tulaga maualuga, aemaise lava i tulaga o auaunaga a tagata o tausia (website).

I nisi vaega o le faiga, o fa'amaumauga e sili atu ona talafeagai mo lenei mea e mafai ona fa'aoga.. Mo se faʻataʻitaʻiga, mulimuli ane na matou maua le faʻaogaina o le siitia mai Redis i CosmosDB e teu ai se ato oka. 

O 'au ma le au atina'e o lo'o a'afia i la latou matata na manino le mana'omia o le tuto'atasi mo a latou tautua, e le gata i le atina'e ma le fa'aulufaleina. Faʻatasi feteʻenaʻiga, faʻamalolo mataupu. Afai mo le 5 atinaʻe o lenei faʻafitauli e le taua, ona faʻatasi ai lea ma le 10, ma sili atu i le tuputupu aʻe fuafuaina, o mea uma o le a sili atu ona ogaoga. Ma o loʻo i luma o le atinaʻeina o se telefoni feaveaʻi (na amata i le 2017, ma i le 2018 na pa'u tele). 

O vaega eseese o le faiga e manaʻomia tulaga eseese o le mautu, ae ona o le malosi o fesoʻotaʻiga o le faiga, e le mafai ona matou tuʻuina atu lenei mea. O se mea sese i le atinaʻeina o se galuega fou i le admin panel e mafai ona tupu i le taliaina o se poloaiga i luga o le saite, aua o le code e masani ma toe faʻaaogaina, o le database ma faʻamaumauga e tutusa foi.

Atonu o le a mafai ona aloese mai nei mea sese ma faʻafitauli i totonu o le faʻavae o sea monolithic-modular architecture: faia se vaevaega o le matafaioi, toe faʻaleleia uma le code ma le database, manino le vavaeeseina o laulau mai le tasi ma le isi, mataʻituina le lelei i aso uma. Ae o fofo faʻataʻitaʻiga filifilia ma le taulaʻi i le faʻalauteleina vave o le faʻaogaina o le faiga na mafua ai faʻafitauli i le tulaga mautu.

E fa'afefea ona tu'uina e le Power of the Mind blog tusi tupe i fale'aiga

Afai o le tuputupu aʻe o le pizzeria network (ma le uta) e faʻaauau pea i le saoasaoa e tasi, a maeʻa sina taimi o le a pa'ū e le mafai ona tulaʻi le faiga. O loʻo faʻaalia lelei faafitauli na amata ona tatou feagai i le 2015, o se tala faʻapea. 

I le blog "Mana mafaufau"o se widget na faʻaalia ai faʻamatalaga i tupe maua mo le tausaga o le fesoʻotaʻiga atoa. Na maua e le widget le Dodo public API, lea e maua ai nei faʻamatalaga. O lenei fuainumera o lo'o avanoa nei ile http://dodopizzastory.com/. O le widget na faʻaalia i luga o itulau taʻitasi ma faia talosaga i luga o se taimi i le 20 sekone. Na alu le talosaga i api.dodopizza.ru ma talosagaina:

  • le numera o pizzerias i le upega tafailagi;

  • aofa'i o tupe maua mai feso'ota'iga talu mai le amataga o le tausaga;

  • tupe maua mo aso nei.

O le talosaga mo fuainumera i luga o tupe maua na alu saʻo i le database ma amata ona talosagaina faʻamatalaga i luga o poloaiga, faʻapipiʻi faʻamaumauga i luga o le lele ma tuʻuina atu le aofaʻi. 

O kesi tupe i fale'aiga na alu i le laulau lava lea e tasi o oka, la'u i luga le lisi o oka na maua mo le aso, ma fa'aopoopo i ai ni oka fou. E ta'i 5 sekone na faia e le Resitala tupe a latou talosaga pe toe fa'afouina le itulau.

O le ata e pei o lenei:

Tala'aga o le Dodo IS Architecture: Ose Monolith Muamua

I le tasi tautoulu, na tusia ai e Fyodor Ovchinnikov se tala umi ma lauiloa i luga o lana blog. E toatele tagata na o mai i le blog ma amata ona faitau ma le faaeteete mea uma. A o faitau e tagata taʻitoʻatasi na o mai le tusiga, o le widget o tupe maua na galue lelei ma talosagaina le API i 20 sekone.

Na taʻua e le API se faiga teu e fuafua ai le aofaʻi o poloaiga uma talu mai le amataga o le tausaga mo pizzeria uma i le filifili. O le tuufaatasiga na faʻavae i luga o le laulau o faʻatonuga, lea e sili ona lauiloa. O kesi tupe uma o faleaiga uma na tatala i lena taimi e alu i ai. Ua le toe tali mai kesi tupe, e lei taliaina ni oka. E leʻi taliaina foi i latou mai le saite, e leʻi faʻaalia i luga o le tracker, e le mafai e le pule o le sifi ona vaʻaia i latou i lana atinaʻe. 

E le na o le pau lea o le tala. E oʻo atu i le tautoulu o le 2015, o Aso Faraile uma o le uta i luga o le faiga e taua tele. E tele taimi na matou tapeina ai le API lautele, ma i le tasi, e tatau ona matou tapeina le saite, aua e leai se mea na fesoasoani. Sa i ai foi se lisi o auaunaga ma se poloaiga tapunia i lalo o le mamafa o uta.

Mai le taimi nei, o la matou tauiviga ma uta ma mo le faʻamautuina o le faiga e amata (mai le autumn 2015 i le autumn 2018). O le taimi lena na tupu ai"pa'u tele". E le gata i lea, o faʻaletonu foi na tupu i nisi o taimi, o nisi na matua maaleale, ae o le vaitaimi lautele o le le mautonu e mafai nei ona manatu ua pasia.

Fa'ateleina pisinisi

Aisea na le mafai ai ona faia i le taimi lava lena? Na'o le va'ai i siata nei.

Tala'aga o le Dodo IS Architecture: Ose Monolith Muamua

I le 2014-2015 foi na i ai se avanoa i Romania ma o se avanoa i Amerika o loʻo sauniuni.

O le fesoʻotaʻiga na faʻatupulaia vave, na tatalaina atunuʻu fou, faʻaalia ni faʻailoga fou o pizzeria, mo se faʻataʻitaʻiga, na tatalaina se pizzeria i le faleʻai. O nei mea uma e manaʻomia ai le gauai faʻapitoa i le faʻalauteleina o galuega a Dodo IS. A aunoa ma nei galuega uma, e aunoa ma le siakiina i totonu o le umukuka, faʻamaumauga mo oloa ma tupe leiloa i totonu o le faiga, faʻaalia le tuʻuina atu o se faʻatonuga i totonu o le fale faʻatau meaʻai, matou te tau le talanoa e uiga i le "saʻo" fausaga ma le "saʻo" auala i. atinae nei.

O le isi fa'alavelave i le toe iloiloga sa'o o le fausaga ma e masani ona gauai atu i faʻafitauli faʻapitoa o le faʻalavelave o le 2014. O mea fa'apenei na afaina tele i avanoa mo 'au e fa'atupulaia, aemaise lava mo pisinisi talavou e pei o le Dodo Pizza.

Fofo vave na Fesoasoani

Faʻafitauli manaʻomia ni fofo. I le masani ai, e mafai ona vaevaeina fofo i ni vaega se 2:

  • O mea vave e tape ai le afi ma tuʻuina atu sina vaega o le saogalemu ma faʻatau ai se taimi tatou te sui ai.

  • Systemic ma, o lea, umi. Reengineering o le tele o modules, vaevaega o se fausaga monolithic i auaunaga eseese (o le tele o latou e le o ni micro, ae nai lo auaunaga macro, ma o loʻo i ai se mea e uiga i ai. Lipoti a Andrey Morevskiy). 

Ole lisi mamago o suiga vave e fa'apea:

Fa'atele le matai faavae

O le mea moni, o le mea muamua e faia e taulimaina ai uta o le faʻateleina lea o le gafatia o le server. Sa faia lea mo le master database ma mo web servers. Talofa e, e na'o se tapula'a e mafai ai, ona taugata tele ai lea.

Talu mai le 2014, ua matou siitia atu i Azure, na matou tusia foi e uiga i lenei autu i lena taimi i le tusiga "Fa'afefea ona avatua e Dodo Pizza le Pizza e Fa'aaoga ai le Microsoft Azure Cloud". Ae ina ua maeʻa se faasologa o faʻaopoopoga i le 'auʻaunaga mo le faʻavae, na latou oʻo mai i luga o le tau. 

Fa'atusa fa'avae mo le faitau

E lua fa'atusa na faia mo le fa'avae:

Faitau Fa'atusa mo fa'amatalaga talosaga. E fa'aaogaina e faitau ai fa'atonuga, ituaiga, taulaga, auala, pizzeria, oloa (suia lemu le vaega), ma i na feso'ota'iga e talia ai sina tuai. Sa i ai le 2 o nei kopi, matou te mautinoa lo latou avanoa i le auala lava e tasi e pei o matai.

ReadReplica mo Lipoti Talosaga. O lenei fa'amaumauga e maualalo le avanoa, ae o lipoti uma na alu i ai. Tuu atu ia i latou e mamafa talosaga mo le tele o faʻamaumauga o faʻamaumauga, ae latou te le aʻafia ai le autu autu o faʻamaumauga ma fesoʻotaʻiga faʻaogaina. 

Fa'ailoga i le code

E leai ni fa'ailoga i so'o se mea i totonu o le fa'ailoga (i mea uma). Na mafua ai ona faaopoopo, e le o taimi uma e manaʻomia ai, talosaga i le faʻamaumauga tuʻuina. O mea'ai na muamua i totonu-manatua ma luga o se 'au'aunaga cache fafo, o Redis. O mea uma na faʻaleaogaina i le taimi, o faʻatulagaga na faʻamaonia i le code.

Tele 'au'aunaga pito i tua

O le pito i tua o le talosaga e manaʻomia foʻi ona faʻalautele e taulimaina le faʻateleina o galuega. Sa tatau ona faia se fuifui mai le tasi iis-server. Ua matou toe faatulaga sauniga talosaga mai le manatua i le RedisCache, lea na mafai ai ona faia ni nai sapalai i tua o se paleni uta faigofie ma le robin. I le taimi muamua, o le Redis lava e tasi na faʻaaogaina mo caches, ona vaevaeina lea i ni nai vaega. 

O se taunuuga, o le fausaga ua sili atu ona faigata ...

Tala'aga o le Dodo IS Architecture: Ose Monolith Muamua

… ae na aveesea nisi o le le mautonu.

Ona tatau ai lea ona toe fai vaega na utaina, lea na matou faia. O le a tatou talanoaina lenei mea i le isi vaega.

puna: www.habr.com

Faaopoopo i ai se faamatalaga