Istwa Dodo IS Achitekti: yon monolit bonè

Oswa chak konpayi ki pa kontan ak yon monolit pa kontan nan pwòp fason li yo.

Devlopman sistèm Dodo IS la te kòmanse imedyatman, tankou biznis Dodo Pizza, an 2011. Li te baze sou lide nan nimerik konplè ak total nan pwosesis biznis, ak pou kont yo, ki menm lè sa a nan 2011 te lakòz anpil kesyon ak dout. Men, depi 9 ane kounye a nou te swiv chemen sa a - ak pwòp devlopman pa nou, ki te kòmanse ak yon monolit.

Atik sa a se yon "repons" a kesyon "Poukisa reekri achitekti a epi fè chanjman sa yo gwo echèl ak alontèm?" tounen nan atik anvan an "Istwa nan Dodo IS Achitekti: chemen an nan biwo dèyè a". Mwen pral kòmanse ak ki jan devlopman Dodo IS te kòmanse, ki jan achitekti orijinal la te sanble, ki jan nouvo modil parèt, ak ki pwoblèm gwo echèl chanjman yo te dwe fè.

Istwa Dodo IS Achitekti: yon monolit bonè

Seri atik "Kisa Dodo IS?" di sou:

  1. Bonè monolit nan Dodo IS (2011-2015). (ou isit la)

  2. Chemen Back Office la: baz separe ak otobis.

  3. Chemen bò kliyan an: fasad sou baz la (2016-2017). (Nan pwogrè...)

  4. Istwa mikwosèvis reyèl yo. (2018-2019). (Nan pwogrè...)

  5. Fini scie monolit la ak estabilizasyon achitekti a. (Nan pwogrè...)

Achitekti inisyal

Nan 2011, achitekti Dodo IS te sanble ak sa a:

Istwa Dodo IS Achitekti: yon monolit bonè

Premye modil nan achitekti a se akseptasyon lòd. Pwosesis biznis la te:

  • kliyan an rele pitza a;

  • manadjè a pran telefòn nan;

  • aksepte yon lòd pa telefòn;

  • ranpli li an paralèl nan koòdone nan akseptasyon lòd: enfòmasyon sou kliyan an, done sou detay lòd, adrès livrezon yo pran an kont. 

Koòdone nan sistèm enfòmasyon an te sanble yon bagay tankou sa a ...

Premye vèsyon soti Oktòb 2011:

Yon ti kras amelyore nan mwa janvye 2012

Dodo pitza sistèm enfòmasyon livrezon pitza restoran

Resous pou devlopman premye modil la pran lòd yo te limite. Nou te oblije fè anpil, rapidman ak yon ti ekip. Yon ti ekip se 2 devlopè ki mete fondasyon pou tout sistèm nan lavni.

Premye desizyon yo te detèmine sò pil teknoloji a:

  • Backend sou ASP.NET MVC, lang C#. Devlopè yo te dotnetchiki, pil sa a te abitye ak bèl yo.

  • Frontend sou Bootstrap ak JQuery: koòdone itilizatè sou estil ekri pwòp tèt ou ak script. 

  • Baz done MySQL: pa gen okenn depans pou lisans, fasil pou itilize.

  • Sèvè sou Windows Server, paske .NET Lè sa a, te kapab sèlman anba Windows (nou pa pral diskite sou Mono).

Fizikman, tout bagay sa yo te eksprime nan "dedic nan hoster la". 

Achitekti aplikasyon pou konsome bon jan kantite

Lè sa a, tout moun te deja pale sou mikwosèvis, ak SOA te itilize nan gwo pwojè pou 5 ane, pou egzanp, WCF te lage nan 2006. Men, Lè sa a, yo te chwazi yon solisyon serye ak pwouve.

Men li ye.

Istwa Dodo IS Achitekti: yon monolit bonè

Asp.Net MVC se razwa, ki, sou demann nan yon fòm oswa nan yon kliyan, rann yon paj HTML ak rann sèvè. Sou kliyan an, scripts CSS ak JS deja montre enfòmasyon epi, si sa nesesè, fè demann AJAX atravè JQuery.

Demann sou sèvè a fini nan klas *Controller, kote pwosesis la ak jenerasyon paj HTML final la pran plas nan metòd la. Kontwolè yo fè demann nan yon kouch lojik ki rele *Sèvis. Chak nan sèvis yo koresponn ak kèk aspè nan biznis la:

  • Pou egzanp, DepartmentStructureService te bay enfòmasyon sou pitza, sou depatman. Yon depatman se yon gwoup pidzerya dirije pa yon franchiz sèl.

  • ReceivingOrdersService aksepte ak kalkile konpozisyon lòd la.

  • Ak SmsService voye SMS lè w rele sèvis API pou voye SMS.

Sèvis trete done ki sòti nan baz done a, ki estoke lojik biznis. Chak sèvis te gen youn oswa plis * Depo ak non ki apwopriye a. Yo deja genyen demann nan pwosedi ki estoke nan baz done a ak yon kouch mape. Te gen lojik biznis nan depo yo, espesyalman anpil nan moun ki bay rapò done. ORM pa te itilize, tout moun te konte sou sql ekri alamen. 

Te gen tou yon kouch modèl domèn ak klas asistan komen, pou egzanp, klas Lòd ki estoke lòd la. Nan menm kote a, nan kouch la, te gen yon asistan pou konvèti tèks la ekspozisyon dapre lajan an chwazi.

Tout bagay sa a ka reprezante pa tankou yon modèl:

Istwa Dodo IS Achitekti: yon monolit bonè

Fason lòd

Konsidere yon fason inisyal senplifye pou kreye yon lòd konsa.

Istwa Dodo IS Achitekti: yon monolit bonè

Okòmansman, sit la te estatik. Li te gen pri sou li, ak sou tèt - yon nimewo telefòn ak inscription la "Si ou vle pitza - rele nimewo a ak lòd." Pou kòmande, nou bezwen aplike yon koule senp: 

  • Kliyan an vizite yon sit estatik ak pri, chwazi pwodwi ak rele nimewo ki nan lis sou sit la.

  • Kliyan an bay non pwodwi yo vle ajoute nan lòd la.

  • Bay adrès li ak non li.

  • Operatè a aksepte lòd la.

  • Lòd la parèt nan koòdone lòd yo aksepte.

Li tout kòmanse ak montre meni an. Yon itilizatè-operatè ki konekte aksepte yon sèl lòd alafwa. Se poutèt sa, kabwa bouyon an ka estoke nan sesyon li (sesyon itilizatè a ki estoke nan memwa). Gen yon objè Cart ki gen pwodwi ak enfòmasyon kliyan.

Kliyan an bay non pwodwi a, operatè a klike sou li + akote pwodwi a, epi yo voye yon demann sou sèvè a. Enfòmasyon sou pwodwi a rale soti nan baz done a epi yo ajoute enfòmasyon sou pwodwi a nan kabwa a.

Istwa Dodo IS Achitekti: yon monolit bonè

Note. Wi, isit la ou pa ka rale pwodwi a soti nan baz done a, men transfere li soti nan entèfas la. Men, pou klè, mwen te montre egzakteman chemen ki soti nan baz done a. 

Apre sa, antre adrès la ak non kliyan an. 

Istwa Dodo IS Achitekti: yon monolit bonè

Lè ou klike sou "Kreye Lòd":

  • Yo voye demann lan bay OrderController.SaveOrder().

  • Nou jwenn Cart nan sesyon an, gen pwodwi nan kantite nou bezwen an.

  • Nou konplete Cart la ak enfòmasyon sou kliyan an epi pase li nan metòd AddOrder nan klas ReceivingOrderService la, kote li sove nan baz done a. 

  • Baz done a gen tab ak lòd la, konpozisyon lòd la, kliyan an, epi yo tout konekte.

  • Koòdone ekspozisyon lòd la ale ak rale dènye lòd yo epi montre yo.

Nouvo modil

Pran lòd la te enpòtan ak nesesè. Ou pa ka fè yon biznis pitza si ou pa gen yon lòd pou vann. Se poutèt sa, sistèm lan te kòmanse jwenn fonksyonalite - apeprè soti nan 2012 a 2015. Pandan tan sa a, anpil blòk diferan nan sistèm nan parèt, ke mwen pral rele modil yo, Kontrèman ak konsèp nan sèvis oswa pwodwi. 

Yon modil se yon seri fonksyon ki ini pa kèk objektif biznis komen. An menm tan, yo fizikman nan menm aplikasyon an.

Modil yo ka rele blòk sistèm. Pou egzanp, sa a se yon modil rapò, koòdone admin, tracker manje nan kwizin nan, otorizasyon. Sa yo se tout interfaces itilizatè diferan, kèk menm gen diferan estil vizyèl. An menm tan an, tout bagay se nan kad yon aplikasyon, yon sèl pwosesis kouri. 

Teknikman, modil yo te fèt kòm Zòn (yon lide konsa menm rete nan asp.net nwayo). Te gen fichye separe pou entèfas, modèl, ak pwòp klas kontwolè yo. Kòm yon rezilta, sistèm nan te transfòme soti nan sa a ...

Istwa Dodo IS Achitekti: yon monolit bonè

... nan sa a:

Istwa Dodo IS Achitekti: yon monolit bonè

Gen kèk modil yo aplike pa sit separe (pwojè ègzekutabl), akòz yon fonksyonalite konplètman separe ak an pati akòz yon devlopman yon ti kras separe, plis konsantre. Sa a:

  • Sit - premye vèsyon sit dodopizza.ru.

  • Ekspòte: telechaje rapò ki soti nan Dodo IS pou 1C. 

  • Pèsonèl - kont pèsonèl anplwaye a. Li te devlope separeman e li gen pwòp pwen antre li yo ak konsepsyon separe.

  • fs - yon pwojè pou hosting static. Apre sa, nou te deplase lwen li, deplase tout estatik yo nan Akamai CDN la. 

Rès blòk yo te nan aplikasyon BackOffice. 

Istwa Dodo IS Achitekti: yon monolit bonè

Eksplikasyon non:

  • Cashier - Restoran kesye.

  • ShiftManager - interfaces pou wòl "Shift Manager": estatistik operasyonèl sou lavant pitza, kapasite nan mete pwodwi sou lis la sispann, chanje lòd la.

  • OfficeManager - koòdone pou wòl "Manadjè Pizzeria" ak "Franchizye". Isit la yo kolekte fonksyon pou mete kanpe yon pitza, pwomosyon bonis li yo, resevwa ak travay ak anplwaye yo, rapò.

  • PublicScreens - koòdone pou televizyon ak tablèt ki pandye nan pidzerya. Televizyon yo montre meni, enfòmasyon piblisite, estati lòd sou livrezon. 

Yo te itilize yon kouch sèvis komen, yon blòk klas domèn Dodo.Core komen, ak yon baz komen. Pafwa yo ka toujou mennen ansanm tranzisyon yo youn ak lòt. Ki gen ladan sit endividyèl, tankou dodopizza.ru oswa personal.dodopizza.ru, te ale nan sèvis jeneral.

Lè nouvo modil yo te parèt, nou te eseye reitilize kòd sèvis yo, pwosedi ki estoke yo ak tab yo ki te deja kreye yo nan baz done a maksimòm. 

Pou yon pi bon konpreyansyon sou echèl modil yo te fè nan sistèm nan, isit la se yon dyagram soti nan 2012 ak plan devlopman:

Istwa Dodo IS Achitekti: yon monolit bonè

Pa 2015, tout bagay te sou kat jeyografik la e menm plis te nan pwodiksyon an.

  • Akseptasyon lòd te grandi nan yon blòk separe nan Sant kontak la, kote lòd la aksepte pa operatè a.

  • Te gen ekran piblik ak meni ak enfòmasyon pandye nan pitza.

  • Kwizin nan gen yon modil ki otomatikman jwe mesaj vwa "Nouvo pitza" lè yon nouvo lòd rive, epi tou li enprime yon fakti pou courrier la. Sa a anpil senplifye pwosesis yo nan kwizin nan, pèmèt anplwaye yo pa distrè pa yon gwo kantite operasyon senp.

  • Inite akouchman an te vin tounen yon kesye akouchman separe, kote yo te bay lòd la bay courrier ki te deja pran shift la. Tan travay li te pran an kont pou kalkil pewòl. 

Nan paralèl, soti nan 2012 a 2015, plis pase 10 devlopè te parèt, 35 pidzerya louvri, deplwaye sistèm nan Woumani ak prepare pou ouvèti plòg nan peyi Etazini. Devlopè yo pa fè fas ak tout travay yo ankò, men yo te divize an ekip. chak espesyalize nan pati pwòp li yo nan sistèm nan. 

Pwoblèm

Ki gen ladan paske nan achitekti a (men se pa sèlman).

Dezòd nan baz la

Yon baz se pratik. Konsistans ka reyalize nan li, ak nan depans lan nan zouti bati nan baz done relasyon. Travay ak li se abitye ak pratik, espesyalman si gen kèk tab ak ti done.

Men, plis pase 4 ane nan devlopman, baz done a te tounen soti nan gen apeprè 600 tab, 1500 pwosedi ki estoke, anpil nan yo te gen tou lojik. Ay, pwosedi ki estoke pa pote anpil avantaj lè w ap travay ak MySQL. Yo pa kachèt pa baz la, ak estoke lojik nan yo konplike devlopman ak debogaj. Reutilisation kòd tou difisil.

Anpil tab pa t 'gen endis apwopriye, yon kote, okontrè, te gen yon anpil nan endèks, ki te fè li difisil pou mete. Li te nesesè yo modifye apeprè 20 tab - tranzaksyon an yo kreye yon lòd te kapab pran apeprè 3-5 segonn. 

Done ki nan tablo yo pa t toujou nan fòm ki pi apwopriye a. Yon kote li te nesesè yo fè denormalization. Yon pati nan done yo te resevwa regilyèman te nan yon kolòn nan fòm lan nan yon estrikti XML, sa a ogmante tan an ekzekisyon, lonje demann yo ak konplike devlopman an.

Nan menm tab yo te pwodwi anpil demann etewojèn. Tab popilè soufri espesyalman, tankou tablo a mansyone pi wo a. lòd oswa tab pitza ke. Yo te itilize yo montre interfaces operasyonèl nan kwizin nan, analytics. Yon lòt sit kontakte yo (dodopizza.ru), kote nan nenpòt ki lè yon anpil nan demann te kapab toudenkou vini. 

Done yo pa te totalman ak anpil kalkil te pran plas sou vole a lè l sèvi avèk baz la. Sa a te kreye kalkil nesesè ak chaj adisyonèl. 

Souvan kòd la te ale nan baz done a lè li pa t 'kapab fè sa. Yon kote pa te gen ase operasyon esansyèl, yon kote li ta nesesè yo gaye yon sèl demann nan plizyè nan kòd la nan lòd yo pi vit ak ogmante fyab. 

Jwenti ak ofiskasyon nan kòd

Modil ki te sipoze responsab pou pati yo nan biznis la pa t 'fè li onètman. Kèk nan yo te gen duplication de fonksyon pou wòl. Pa egzanp, yon komèsan lokal ki responsab aktivite maketing rezo a nan vil li a te oblije itilize tou de koòdone "Admin" (pou kreye pwomosyon) ak koòdone "Manadjè Biwo" (pou wè enpak pwomosyon sou biznis la). Natirèlman, andedan tou de modil yo te itilize menm sèvis la ki te travay ak pwomosyon bonis.

Sèvis (klas nan yon sèl gwo pwojè monolitik) te kapab rele youn ak lòt pou anrichi done yo.

Avèk klas modèl tèt yo ki estoke done, travay nan kòd la te pote soti yon fason diferan. Yon kote te gen konstrukteur nan ki li te posib yo presize jaden obligatwa yo. Yon kote sa a te fè nan pwopriyete piblik yo. Natirèlman, jwenn ak transfòme done ki soti nan baz done a te varye. 

Lojik la te swa nan contrôleur yo oswa nan klas sèvis yo. 

Sa yo sanble pwoblèm minè, men yo anpil ralanti devlopman ak redwi bon jan kalite, ki mennen nan enstabilite ak pinèz. 

Konpleksite nan yon devlopman gwo

Difikilte te parèt nan devlopman nan tèt li. Li te nesesè yo fè blòk diferan nan sistèm nan, ak nan paralèl. Fikse bezwen chak eleman nan yon sèl kòd te vin de pli zan pli difisil. Li pa t 'fasil dakò ak tanpri tout eleman yo an menm tan. Anplis de sa, te gen limit nan teknoloji, espesyalman konsènan baz la ak entèfas. Li te nesesè yo abandone jQuery nan direksyon wo nivo kad, espesyalman an tèm de sèvis kliyan (sit entènèt).

Nan kèk pati nan sistèm nan, baz done ki pi apwopriye pou sa a ta ka itilize.. Pou egzanp, pita nou te gen ka itilize nan deplase soti nan Redis nan CosmosDB nan magazen yon panyen lòd. 

Ekip ak devlopè ki enplike nan domèn yo te vle klèman plis otonomi pou sèvis yo, tou de an tèm de devlopman ak deplwaye. Rantre konfli, lage pwoblèm. Si pou 5 devlopè pwoblèm sa a se ensiyifyan, Lè sa a, ak 10, e menm plis konsa ak kwasans lan te planifye, tout bagay ta vin pi grav. Ak pi devan yo te dwe devlopman nan yon aplikasyon mobil (li te kòmanse nan 2017, ak nan 2018 li te gwo tonbe). 

Diferan pati nan sistèm lan mande diferan nivo estabilite, men akòz koneksyon an fò nan sistèm nan, nou pa t 'kapab bay sa a. Yon erè nan devlopman nan yon nouvo fonksyon nan panèl la admin te kapab byen te pran plas nan akseptasyon an nan yon lòd sou sit la, paske kòd la se komen ak ki kapab itilize ankò, baz done a ak done yo tou se menm bagay la.

Li ta posib pou evite erè ak pwoblèm sa yo nan kad yon achitekti monolitik-modilè konsa: fè yon divizyon responsablite, refactor tou de kòd la ak baz done a, byen klè separe kouch yo youn ak lòt, kontwole bon jan kalite a chak jou. Men, solisyon yo chwazi achitekti ak konsantre sou ekspansyon rapid nan fonksyonalite sistèm nan mennen nan pwoblèm an tèm de estabilite.

Ki jan blog Power of the Mind mete kach anrejistre yo nan restoran

Si kwasans lan nan rezo a pitza (ak chaj) kontinye nan menm vitès la, Lè sa a, apre yon ti tan tonbe yo ta dwe tankou ke sistèm nan pa ta monte. Byen ilistre pwoblèm yo ke nou te kòmanse fè fas a pa 2015, isit la se tankou yon istwa. 

Nan blog la "Pouvwa lespri” se te yon widget ki te montre done sou revni pou ane a nan tout rezo a. Widget la te jwenn aksè nan API piblik Dodo, ki bay done sa yo. Estatistik sa a disponib kounye a nan http://dodopizzastory.com/. Widget la te montre sou chak paj epi fè demann sou yon revèy chak 20 segonn. Demann lan te ale nan api.dodopizza.ru epi li te mande:

  • kantite pitzaria nan rezo a;

  • revni total rezo depi kòmansman ane a;

  • revni pou jodi a.

Demann estatistik sou revni yo te ale tou dwat nan baz done a epi li te kòmanse mande done sou lòd, rasanble done sou vole ak bay kantite lajan an. 

Biwo lajan kach nan restoran yo te ale nan menm tab la nan lòd, dechaje yon lis lòd yo te resevwa pou jodi a, ak nouvo lòd yo te ajoute nan li. Kach anrejistre yo te fè demann yo chak 5 segonn oswa sou rafrechisman paj.

Dyagram nan te sanble ak sa a:

Istwa Dodo IS Achitekti: yon monolit bonè

Yon sezon otòn, Fyodor Ovchinnikov te ekri yon atik long ak popilè sou blog li. Anpil moun te vin sou blog la epi yo te kòmanse li tout bagay ak anpil atansyon. Pandan ke chak moun ki te vini yo t ap li atik la, widget revni a te travay byen epi li te mande API a chak 20 segonn.

API a rele yon pwosedi ki estoke pou kalkile sòm tout lòd depi kòmansman ane a pou tout pidzerya nan rezo a. Agregasyon an te baze sou tab la lòd, ki trè popilè. Tout biwo lajan kach nan tout restoran ki louvri nan moman sa a ale nan li. Biwo lajan kach yo sispann reponn, lòd yo pa te aksepte. Yo pa t 'aksepte tou nan sit la, pa t' parèt sou tracker a, manadjè chanjman an pa t 'kapab wè yo nan koòdone l' yo. 

Sa a se pa istwa a sèlman. Nan sezon otòn 2015 la, chak vandredi chaj la sou sistèm nan te kritik. Plizyè fwa nou fèmen API piblik la, epi yon fwa, nou menm te oblije fèmen sit la, paske pa gen anyen ki te ede. Te gen menm yon lis sèvis ak yon lòd fèmen anba chay lou.

Depi koulye a, lit nou ak chay ak pou estabilizasyon sistèm lan kòmanse (soti nan otòn 2015 rive nan otòn 2018). Se lè sa rive"gwo sezon otòn". Pli lwen, echèk te rive tou pafwa, gen kèk ki te trè sansib, men peryòd jeneral la nan enstabilite kapab kounye a konsidere kòm pase.

Rapid kwasans biznis

Poukisa li pa t 'kapab fèt touswit? Jis gade nan tablo sa yo.

Istwa Dodo IS Achitekti: yon monolit bonè

Epitou nan 2014-2015 te gen yon ouvèti nan Woumani ak yon ouvèti nan USA a te prepare.

Rezo a te grandi byen vit, nouvo peyi yo te louvri, nouvo fòma pidzerya parèt, pou egzanp, yon pidzerya te louvri nan tribinal manje a. Tout bagay sa yo te mande anpil atansyon espesyalman pou ekspansyon fonksyon Dodo IS. San yo pa tout fonksyon sa yo, san yo pa swiv nan kwizin nan, kontablite pou pwodwi ak pèt nan sistèm nan, montre emisyon an nan yon lòd nan sal la tribinal manje, nou ta diman ap pale de achitekti "kòrèk" la ak apwòch "kòrèk" la. devlopman kounye a.

Yon lòt obstak nan revizyon an alè nan achitekti a ak jeneralman atansyon sou pwoblèm teknik yo te kriz la nan 2014. Bagay sa yo frape anpil opòtinite pou ekip yo grandi, espesyalman pou yon jèn biznis tankou Dodo Pizza.

Solisyon rapid ki te ede

Pwoblèm yo bezwen solisyon. Konvansyonèl, solisyon yo ka divize an 2 gwoup:

  • Vit yo ki mete dife a epi ki bay yon ti maj sekirite ak achte nou tan chanje.

  • Sistemik ak, Se poutèt sa, long. Reengineering nan yon kantite modil, divizyon nan yon achitekti monolitik nan sèvis separe (pifò nan yo pa nan tout mikwo, men pito sèvis macro, e gen yon bagay sou li. Rapò Andrey Morevskiy a). 

Lis sèk chanjman rapid yo se jan sa a:

Ogmante baz mèt

Natirèlman, premye bagay ki fè fas ak charj se ogmante kapasite sèvè a. Sa a te fè pou baz done mèt la ak pou serveurs entènèt. Ay, sa a se posib sèlman jiska yon sèten limit, Lè sa a, li vin twò chè.

Depi 2014, nou te deplase nan Azure, nou te ekri tou sou sijè sa a nan moman sa a nan atik la "Ki jan Dodo Pizza delivre pitza lè l sèvi avèk Microsoft Azure nwaj la". Men, apre yon seri de ogmantasyon nan sèvè a pou baz la, yo te vin kont pri a. 

Replik baz pou lekti

De kopi yo te fè pou baz la:

ReadReplica pou demann referans. Yo itilize li pou li anyè, kalite, vil, lari, pitza, pwodwi (domèn ki chanje tou dousman), ak nan entèfas sa yo kote yon ti reta akseptab. Te gen 2 nan kopi sa yo, nou asire disponiblite yo menm jan ak mèt yo.

ReadReplica pou Demann Rapò. Baz done sa a te gen pi ba disponiblite, men tout rapò te ale nan li. Kite yo gen gwo demann pou gwo rekalkil done, men yo pa afekte baz done prensipal la ak koòdone operasyonèl yo. 

Caches nan kòd

Pa te gen okenn kachèt nenpòt kote nan kòd la (nan tout). Sa a te mennen nan demann adisyonèl, pa toujou nesesè, nan baz done a chaje. Kachèt yo te premye tou de nan memwa ak sou yon sèvis kachèt ekstèn, ki te Redis. Tout bagay te anile pa tan, anviwònman yo te espesifye nan kòd la.

Plizyè serveurs backend

Dèyè aplikasyon an te bezwen tou pou yo monte pou jere kantite travay yo ogmante. Li te nesesè yo fè yon grap soti nan yon sèl iis-sèvè. Nou te repwograme sesyon aplikasyon an soti nan memwa nan RedisCache, ki te fè li posib fè plizyè serveurs dèyè yon balanse chaj senp ak round robin. Okòmansman, yo te itilize menm Redis la kòm pou kachèt, Lè sa a, li te divize an plizyè. 

Kòm yon rezilta, achitekti a te vin pi konplike ...

Istwa Dodo IS Achitekti: yon monolit bonè

… men kèk nan tansyon an te retire.

Lè sa a, li te nesesè yo refè eleman yo chaje, ki nou te antreprann. Nou pral pale sou sa a nan pwochen pati a.

Sous: www.habr.com

Add nouvo kòmantè