Tarihin Dodo IS Architecture: Farkon Monolith

Ko kuma duk kamfanin da ba shi da farin ciki tare da monolith ba shi da farin ciki a hanyarsa.

Ci gaban tsarin Dodo IS ya fara nan da nan, kamar kasuwancin Dodo Pizza - a cikin 2011. Ya dogara ne a kan ra'ayin cikakken da kuma jimlar digitization na kasuwanci tafiyar matakai, da kuma da kansu, wanda ko a 2011 ya haifar da tambayoyi da shakku da yawa. Amma yanzu shekaru 9 muna bin wannan tafarki - tare da ci gaban kanmu, wanda ya fara da monolith.

Wannan labarin shine "amsar" ga tambayoyin "Me yasa aka sake rubuta gine-gine da yin irin waɗannan manyan canje-canje da kuma dogon lokaci?" zuwa labarin da ya gabata "Tarihin Dodo IS gine: hanyar ofishin baya". Zan fara da yadda ci gaban Dodo IS ya fara, da yadda tsarin gine-ginen farko ya kasance, da yadda sabbin kayayyaki suka bayyana, da kuma matsalolin da ya kamata a yi manyan canje-canje.

Tarihin Dodo IS Architecture: Farkon Monolith

Jerin labaran "Mene ne Dodo IS?" ya fada game da:

  1. Farkon monolith a Dodo IS (2011-2015). (Kuna nan)

  2. Hanyar Ofishi na Baya: Rarrabe Tushe da Bus.

  3. Hanyar gefen abokin ciniki: facade a kan tushe (2016-2017). (Ana kai...)

  4. Tarihin microservices na gaskiya. (2018-2019). (Ana kai...)

  5. Gama sawing na monolith da stabilization na gine-gine. (Ana kai...)

Gine-gine na farko

A cikin 2011, gine-ginen Dodo IS ya kasance kamar haka:

Tarihin Dodo IS Architecture: Farkon Monolith

Tsarin farko a cikin gine-gine shine karɓar oda. Tsarin kasuwanci ya kasance kamar haka:

  • abokin ciniki ya kira pizzeria;

  • Manaja ya ɗauki wayar;

  • yana karɓar umarni ta waya;

  • A lokaci guda, yana cika shi a cikin tsarin karɓar oda: bayanai game da abokin ciniki, bayanai akan bayanan oda, da adireshin bayarwa ana la'akari da su. 

Tsarin tsarin bayanai yayi kama da wannan ...

Sigar farko daga Oktoba 2011:

An inganta kadan a cikin Janairu 2012

Tsarin bayanai Dodo Pizza Delivery Pizza Restaurant

Abubuwan da za a haɓaka tsarin ɗaukar oda na farko sun iyakance. Ya zama dole a yi da yawa, da sauri da kuma tare da ƙaramin ƙungiya. Ƙananan ƙungiyar ta ƙunshi masu haɓaka 2 waɗanda suka kafa harsashin tsarin gaba ɗaya.

Hukuncinsu na farko ya ƙaddara makomar tarin fasahar nan gaba:

  • Baya akan ASP.NET MVC, C# harshe. Masu haɓakawa sun kasance masu dotnetters; wannan tari ya saba da su.

  • Frontend akan Bootstrap da JQuery: mu'amalar mai amfani dangane da salo da rubutun al'ada. 

  • MySQL database: babu farashin lasisi, mai sauƙin amfani.

  • Sabar a kan Windows Server, saboda .NET to zai iya kasancewa akan Windows kawai (ba za mu tattauna Mono ba).

A zahiri, duk an bayyana wannan a cikin "tebur na mai masaukin baki." 

Gine-gine na aikace-aikacen karɓar oda

A wancan lokacin, kowa ya riga ya yi magana game da microservices, kuma an yi amfani da SOA a manyan ayyuka na kimanin shekaru 5, alal misali, an sake WCF a 2006. Amma sai suka zaɓi ingantaccen kuma tabbataccen bayani.

Gashi nan.

Tarihin Dodo IS Architecture: Farkon Monolith

Asp.Net MVC shine Razor, wanda, akan buƙata daga nau'i ko daga abokin ciniki, yana samar da shafin HTML tare da nunawa akan uwar garke. A kan abokin ciniki, rubutun CSS da JS sun riga sun nuna bayanai kuma, idan ya cancanta, yi buƙatun AJAX ta hanyar JQuery.

Buƙatun kan uwar garken sun faɗi cikin *Azuzuwan Mai sarrafawa, inda hanyar ke aiwatarwa da haifar da shafin HTML na ƙarshe. Masu sarrafawa suna yin buƙatun zuwa tsarin dabaru mai suna *Services. Kowane ɗayan sabis ɗin ya yi daidai da wani bangare na kasuwancin:

  • Misali, DepartmentStructureService ya ba da bayanai kan pizzerias da sassan. Sashe rukuni ne na pizzerias wanda wani franchisee ɗaya ke gudanarwa.

  • Sabis ɗin karɓar oda ya karɓa kuma ya ƙididdige abubuwan da ke cikin odar.

  • Kuma SmsService ya aika SMS ta kiran ayyukan API don aika SMS.

Sabis ɗin sun sarrafa bayanai daga ma'ajin bayanai da dabarun kasuwanci da aka adana. Kowane sabis yana da ɗaya ko fiye * ma'ajiyar ajiya mai sunan da ya dace. Sun riga sun ƙunshi tambayoyin da aka adana a cikin ma'ajin bayanai da ma'aunin taswira. Ma'ajiyar ajiyar suna da dabarun kasuwanci, musamman da yawa daga cikinsu waɗanda ke samar da bayanan rahoto. Ba a yi amfani da ORM ba, kowa ya dogara da rubutun hannu sql. 

Har ila yau, akwai nau'in samfurin yanki da kuma azuzuwan masu taimako na gabaɗaya, misali, ajin oda, wanda ya adana oda. A can, a cikin Layer, akwai mai taimako don canza rubutun nuni bisa ga kuɗin da aka zaɓa.

Duk waɗannan za a iya wakilta ta wannan samfurin:

Tarihin Dodo IS Architecture: Farkon Monolith

Hanyar oda

Bari mu yi la'akari da sauƙaƙan hanyar farko don ƙirƙirar irin wannan tsari.

Tarihin Dodo IS Architecture: Farkon Monolith

Da farko shafin ya tsaya tsaye. Akwai farashi akansa, kuma a saman akwai lambar waya da rubutun "Idan kuna son pizza, kira lambar kuma ku yi oda." Don yin oda, muna buƙatar aiwatar da kwarara mai sauƙi: 

  • Abokin ciniki yana zuwa gidan yanar gizon a tsaye tare da farashi, ya zaɓi samfur kuma ya kira lambar da aka jera akan gidan yanar gizon.

  • Abokin ciniki ya sanya sunayen samfuran da yake so ya ƙara zuwa oda.

  • Ya ba da adireshinsa da sunansa.

  • Mai aiki yana karɓar oda.

  • Ana nuna odar a cikin tsarin umarni da aka karɓa.

Duk yana farawa da nunin menu. Mai amfani da afaretan shiga yana karɓar oda ɗaya kawai a lokaci ɗaya. Saboda haka, za a iya adana daftarin kaya a cikin zamansa (an adana zaman mai amfani a cikin ƙwaƙwalwar ajiya). Akwai abin Cart mai ɗauke da samfura da bayanan abokin ciniki.

Abokin ciniki ya sanya sunan samfurin, mai aiki yana dannawa + kusa da samfurin, kuma ana aika buƙatar zuwa uwar garken. Ana fitar da bayanai game da samfurin daga ma'ajin bayanai kuma ana ƙara bayanai game da samfurin a cikin keken.

Tarihin Dodo IS Architecture: Farkon Monolith

Примечание. Ee, a nan ba dole ba ne ka cire samfurin daga bayanan, amma canza shi daga ƙarshen gaba. Amma don tsabta, na nuna ainihin hanyar daga tushe. 

Na gaba, shigar da adireshin abokin ciniki da sunan abokin ciniki. 

Tarihin Dodo IS Architecture: Farkon Monolith

Lokacin da ka danna "Ƙirƙiri oda":

  • Muna aika buƙatar zuwa OrderController.SaveOrder().

  • Muna samun Cart daga zaman, akwai samfurori a cikin adadin da muke buƙata.

  • Muna ƙara Cart tare da bayani game da abokin ciniki kuma mu wuce shi zuwa hanyar AddOrder na ajin ReceivingOrderService, inda aka ajiye shi zuwa bayanan bayanai. 

  • Database yana da teburi tare da tsari, abubuwan da ke cikin tsari, abokin ciniki, kuma duk an haɗa su.

  • Tsarin nunin oda yana zuwa yana fitar da sabbin umarni kuma yana nuna su.

Sabbin kayayyaki

Karɓar oda yana da mahimmanci kuma ya zama dole. Ba za ku iya gudanar da kasuwancin pizza ba idan ba ku da odar siyarwa. Saboda haka, tsarin ya fara samun aiki - daga kimanin 2012 zuwa 2015. A wannan lokacin, yawancin tubalan tsarin sun bayyana, wanda zan kira kayayyaki, sabanin manufar sabis ko samfur. 

Module saitin ayyuka ne waɗanda aka haɗa ta da wasu burin kasuwanci gama gari. Bugu da ƙari, suna cikin jiki a cikin aikace-aikacen guda ɗaya.

Modules za a iya kira tsarin tubalan. Misali, wannan tsarin bayar da rahoto ne, hanyoyin sadarwa na gudanarwa, kitchen samfurin tracker, izini. Waɗannan duk nau'ikan mu'amala ne daban-daban, wasu ma suna da salon gani daban-daban. Bugu da ƙari, duk abin da ke cikin aikace-aikace ɗaya, tsari guda ɗaya. 

A fasaha, an ƙirƙira samfuran a matsayin Yanki (wannan ra'ayin har ma ya kasance a ciki asp.net core). Akwai daban-daban fayiloli don gaba, samfuri, da kuma nasu azuzuwan masu sarrafawa. A sakamakon haka, tsarin ya canza daga irin wannan ...

Tarihin Dodo IS Architecture: Farkon Monolith

... ga wannan:

Tarihin Dodo IS Architecture: Farkon Monolith

Ana aiwatar da wasu na'urori ta wasu rukunin yanar gizo (aikin da za'a iya aiwatarwa), saboda aikin keɓantacce gabaɗaya kuma sabili da ɗan bambanta, ci gaban mai da hankali sosai. Wannan:

  • Shafin - sigar farko gidan yanar gizo dodopizza.ru.

  • Export: zazzage rahotanni daga Dodo IS na 1C. 

  • Personal - asusun sirri na ma'aikaci. An ƙirƙira shi daban kuma yana da wurin shigar kansa da ƙirar daban.

  • fs - aikin don a tsaye hosting. Daga baya mun matsa daga gare ta, matsar da duk abin da ke tsaye zuwa CDN Akamai. 

Sauran tubalan suna cikin aikace-aikacen BackOffice. 

Tarihin Dodo IS Architecture: Farkon Monolith

Bayanin sunaye:

  • Cashier - Rijistar kuɗin gidan abinci.

  • ShiftManager - musaya don rawar "Shift Manager": ƙididdiga na aiki akan tallace-tallace na pizzeria, ikon sanya samfuran akan jerin tasha, canza oda.

  • OfficeManager - musaya don ayyukan "Pizzeria Manager" da "Franchisee". Anan zaku iya nemo ayyuka don saita pizzeria, tallan tallan sa, karba da aiki tare da ma'aikata, da rahotanni.

  • PublicScreens - musaya don TV da allunan rataye a cikin pizzerias. Talabijan din suna nuna menu, bayanin talla, da matsayin oda lokacin isarwa. 

Sun yi amfani da layin sabis na gama-gari, toshe gama gari na azuzuwan yanki na Dodo.Core, da tushe gama gari. Wasu lokuta har yanzu suna iya kaiwa ta hanyar sassa zuwa juna. Bugu da kari, kowane rukunin yanar gizo, kamar dodopizza.ru ko personal.dodopizza.ru, suma sun sami isa ga ayyukan gama gari.

Lokacin da sababbin kayayyaki suka bayyana, mun yi ƙoƙarin sake amfani da ita gwargwadon yuwuwar lambar da aka ƙirƙira don ayyuka, hanyoyin da aka adana da kuma teburi a cikin bayanan. 

Don ƙarin fahimtar ma'auni na kayayyaki da aka yi a cikin tsarin, ga zane daga 2012 tare da tsare-tsaren ci gaba:

Tarihin Dodo IS Architecture: Farkon Monolith

Ta hanyar 2015, komai yana kan hanya kuma har ma da ƙari yana cikin samarwa.

  • Karɓar oda ya girma zuwa wani yanki na daban na Cibiyar Tuntuɓar, inda mai aiki ke karɓar odar.

  • Fuskokin jama'a tare da menus da bayanai sun bayyana a cikin pizzerias.

  • Gidan dafa abinci yana da tsari wanda ke kunna saƙon murya kai tsaye "Sabon Pizza" lokacin da sabon tsari ya zo, kuma yana buga daftari ga mai aikawa. Wannan yana sauƙaƙe matakai a cikin ɗakin dafa abinci kuma yana ba da damar ma'aikata kada su damu da babban adadin ayyuka masu sauƙi.

  • Toshewar isar da sako ya zama wani Kasshiyar Bayarwa na daban, inda aka ba da odar ga mai aikawa, wanda a baya ya dauki aikin sa. An yi la'akari da lokacin aikinsa don ƙididdige albashinsa. 

A cikin layi daya, daga 2012 zuwa 2015, fiye da 10 masu haɓakawa sun bayyana, 35 pizzerias ya buɗe, an tura tsarin zuwa Romania kuma an shirya don buɗe maki a Amurka. Masu haɓakawa ba su ƙara shiga cikin duk ayyuka ba, amma an raba su zuwa ƙungiyoyi. kowanne ya kware a bangarensa na tsarin. 

Matsalolin

Ciki har da saboda gine-gine (amma ba kawai).

Hargitsi a gindi

Tushe ɗaya ya dace. Yana yiwuwa a cimma daidaito, kuma a farashin kayan aikin da aka gina a cikin bayanan bayanai. Yin aiki tare da shi ya saba da dacewa, musamman idan akwai 'yan tebur da ƙananan bayanai.

Amma fiye da shekaru 4 na ci gaba, ma'auni ya ƙunshi kusan tebur 600, hanyoyin 1500 da aka adana, yawancin su ma suna da dabaru. Abin takaici, hanyoyin da aka adana ba su samar da fa'ida da yawa yayin aiki tare da MySQL. Ba a adana su ta hanyar ma'ajin bayanai, kuma adana dabaru a cikin su yana dagula ci gaba da gyara kuskure. Sake amfani da lambar kuma yana da wahala.

Yawancin teburi ba su da fihirisa masu dacewa, wani wuri, akasin haka, akwai alamomi da yawa, wanda ya sa shigar da wahala. Game da teburi 20 dole ne a canza su - ma'amala don ƙirƙirar tsari na iya ɗaukar kusan daƙiƙa 3-5. 

Bayanan da ke cikin allunan ba koyaushe suke cikin sigar da ta fi dacewa ba. Wani wuri ya zama dole don yin lalata. Wasu daga cikin bayanan da aka karɓa akai-akai sun kasance a cikin ginshiƙi a cikin nau'i na tsarin XML, wanda ya ƙaru lokacin aiwatarwa, tsayin tambayoyin da ci gaba mai rikitarwa.

Tables iri ɗaya sun kasance batun sosai buƙatun iri-iri. Shahararrun teburi, kamar teburin da aka ambata a sama, sun shafi musamman umarni ko teburi Shagon Pizza. An yi amfani da su don nuna musaya masu aiki a cikin kicin da nazari. Shafin kuma ya tuntube su (dopizza.ru), inda buƙatun da yawa zasu iya zuwa ba zato ba tsammani a kowane lokaci. 

Ba a tara bayanai ba kuma ƙididdiga da yawa sun faru akan tashi ta amfani da tushe. Wannan ya haifar da lissafin da ba dole ba da ƙarin kaya. 

Sau da yawa lambar ta shiga cikin rumbun adana bayanai lokacin da ba ta iya yin hakan ba. A wani wuri akwai ƙarancin ayyuka masu yawa, a wani wuri ya zama dole a raba buƙatu ɗaya zuwa da yawa ta hanyar lamba don hanzarta da haɓaka aminci. 

Hadin kai da rudani a cikin Code

Modules ɗin da ya kamata su ɗauki nauyin sashin kasuwancin su ba su yi shi da gaskiya ba. Wasu daga cikinsu sun sami kwafi na ayyuka don matsayi. Misali, dan kasuwa na gida wanda ke da alhakin ayyukan tallace-tallace na hanyar sadarwa a cikin garinsa dole ne ya yi amfani da hanyar sadarwa ta “Admin” (don saita talla) da kuma “Office Manager” (don duba tasirin talla a kan kasuwanci). Tabbas, a cikin duka samfuran biyu sun yi amfani da sabis iri ɗaya, wanda yayi aiki tare da haɓakar kari.

Sabis (azuzuwan cikin babban aikin guda ɗaya) na iya kiran juna don haɓaka bayanansu.

Tare da azuzuwan samfurin kansu waɗanda ke adana bayanan, aiki a cikin code da aka yi daban-daban. Wani wuri akwai masu ginin da za ku iya tantance filayen da ake buƙata ta hanyarsu. A wani wuri an yi hakan ta hanyar kadarorin jama'a. Tabbas, samun da kuma canza bayanai daga rumbun adana bayanai sun bambanta. 

Hankalin ya kasance ko dai a cikin masu sarrafawa ko azuzuwan sabis. 

Waɗannan suna kama da ƙananan matsaloli, amma sun rage saurin haɓaka haɓakawa da rage inganci, haifar da rashin kwanciyar hankali da kwari. 

Complexity na babban ci gaba

Wahaloli sun taso a cikin ci gaban kanta. Ya zama dole don ƙirƙirar tubalan daban-daban na tsarin, kuma a cikin layi daya. Ya zama da wahala a daidaita buƙatun kowane bangare cikin lamba ɗaya. Ba abu mai sauƙi ba ne yarda da faranta wa duk abubuwan haɗin gwiwa a lokaci guda. Ƙara zuwa wannan an iyakance a cikin fasaha, musamman game da tushe da ƙarshen gaba. Ya zama dole a watsar da JQuery don goyon bayan manyan matakai, musamman dangane da sabis na abokin ciniki (shafin yanar gizo).

Wasu sassan tsarin na iya amfani da bayanan bayanai waɗanda suka fi dacewa da wannan. Misali, daga baya mun sami misali don sauyawa daga Redis zuwa CosmosDB don adana kulin oda. 

Ƙungiyoyi da masu haɓakawa da ke aiki a yankinsu a fili suna son ƙarin 'yancin kai don ayyukansu, duka ta fuskar ci gaba da kuma tsarin ƙaddamarwa. Rikice-rikice a lokacin haɗuwa, matsaloli yayin sakewa. Idan ga masu haɓaka 5 wannan matsala ba ta da mahimmanci, to tare da 10, har ma fiye da haka tare da ci gaban da aka tsara, duk abin zai zama mafi tsanani. Kuma abin da zai zo shi ne haɓaka aikace-aikacen wayar hannu (an fara shi a cikin 2017, kuma a cikin 2018 akwai babban faduwa). 

Daban-daban na tsarin suna buƙatar alamun kwanciyar hankali daban-daban, amma saboda ƙarfin haɗin tsarin, ba za mu iya samar da wannan ba. Kuskure lokacin haɓaka sabon aiki a cikin kwamitin gudanarwa zai iya haifar da karɓuwa a kan rukunin yanar gizon, saboda lambar gama gari ce kuma ana iya sake amfani da ita, ma'ajin bayanai da bayanai ma iri ɗaya ne.

Wataƙila zai yiwu a guje wa waɗannan kurakurai da matsaloli a cikin tsarin irin wannan tsarin gine-gine na monolithic-modular: ƙirƙirar rabe-raben nauyi, sake gyara duka lambar da bayanan bayanai, a fili raba yadudduka daga juna, da kuma lura da inganci kowace rana. Amma hanyoyin da aka zaɓa na gine-gine da kuma mayar da hankali kan fadada aikin tsarin da sauri ya haifar da matsaloli a cikin al'amuran kwanciyar hankali.

Yadda Ƙarfin Hankali na blog ya sanya rajistar kuɗi a cikin gidajen abinci

Idan ci gaban cibiyar sadarwa na pizzeria (da kaya) ya ci gaba a daidai wannan taki, sa'an nan bayan wani lokaci saukad da zai zama irin wannan tsarin ba zai dawo ba. Labarin da ke gaba ya kwatanta matsalolin da muka fara fuskanta a shekara ta 2015. 

A cikin blog"Karfin hankali"akwai widget din da ya nuna bayanan kudaden shiga na shekara ga duk hanyar sadarwa. Widget din ya sami isa ga jama'a Dodo API, wanda ke ba da wannan bayanan. Ana samun waɗannan ƙididdiga yanzu akan http://dodopizzastory.com/. An nuna widget din akan kowane shafi kuma an yi buƙatu akan mai ƙidayar lokaci kowane sakan 20. Buƙatar ta je api.dodopizza.ru kuma ta tambaya:

  • adadin pizzerias a cikin hanyar sadarwa;

  • jimlar kudaden shiga na hanyar sadarwa tun farkon shekara;

  • yau kudaden shiga.

Bukatar kididdigar kudaden shiga ta tafi kai tsaye zuwa bayanan bayanai kuma ta fara neman bayanai kan umarni, tara bayanan kai tsaye akan tashi da fitar da adadin. 

Rijistar tsabar kuɗi a cikin gidajen cin abinci sun tafi teburin oda iri ɗaya, sun ɗora lissafin oda da aka karɓa na yau, kuma an ƙara sabbin umarni a ciki. Masu rajistar tsabar kuɗi sun yi buƙatun su kowane daƙiƙa 5 ko lokacin da shafin ya sabunta.

Jadawalin ya kasance kamar haka:

Tarihin Dodo IS Architecture: Farkon Monolith

Wata rana a cikin fall, Fyodor Ovchinnikov ya rubuta wani dogon labari kuma sananne a kan shafin yanar gizonsa. Mutane da yawa sun zo shafin yanar gizon kuma sun fara karanta komai a hankali. Yayin da kowane ɗayan mutanen da suka zo suna karanta labarin, widget din kudaden shiga ya yi aiki yadda ya kamata kuma ya nemi API kowane sakan 20.

API ɗin ya kira hanyar da aka adana don ƙididdige adadin duk umarni tun farkon shekara don duk pizzerias a cikin hanyar sadarwa. Tarin ya dogara ne akan teburin umarni, wanda ya shahara sosai. Duk rajistar tsabar kudi na duk gidajen cin abinci da aka buɗe a lokacin suna zuwa gare ta. Ma'aikatan rajistar tsabar kudi sun daina amsawa kuma ba a karɓi umarni ba. Har ila yau, ba a karɓi su daga rukunin yanar gizon ba, ba su bayyana a kan tracker ba, kuma mai sarrafa motsi ba zai iya ganin su a cikin mahallinsa ba. 

Wannan ba shine labarin kaɗai ba. A cikin faduwar 2015, kowace Juma'a nauyin da ke kan tsarin yana da mahimmanci. Sau da yawa muna kashe API na jama'a, kuma sau ɗaya ma mun kashe shafin saboda babu abin da ke taimakawa. Akwai ma jerin ayyuka tare da odar rufewa a ƙarƙashin kaya masu nauyi.

Daga wannan lokacin, gwagwarmayarmu tare da lodi da kuma tsarin daidaitawa yana farawa (daga kaka 2015 zuwa kaka 2018). Daga nan ne abin ya faru."Babban Faduwa" Bugu da ari, wani lokacin ma an sami gazawa, wasu daga cikinsu suna da hankali sosai, amma babban lokacin rashin zaman lafiya yanzu ana iya la'akari da shi ya ƙare.

Ci gaban kasuwanci cikin sauri

Me ya sa ba za a iya "yi da kyau nan da nan ba"? Dubi jadawali masu zuwa.

Tarihin Dodo IS Architecture: Farkon Monolith

Har ila yau, a cikin 2014-2015 akwai budewa a Romania kuma ana shirin budewa a Amurka.

Sarkar ta girma da sauri, an buɗe sababbin ƙasashe, sababbin nau'ikan pizzerias sun bayyana, alal misali, pizzeria ya buɗe a cikin ɗakin abinci. Duk wannan yana buƙatar kulawa ta musamman don faɗaɗa ayyukan Dodo IS. Ba tare da duk waɗannan ayyuka ba, ba tare da bin diddigin a cikin ɗakin abinci ba, lissafin samfurori da hasara a cikin tsarin, nuna isar da umarni a cikin ɗakin cin abinci, ba shi yiwuwa a yanzu za mu yi magana game da gine-ginen "daidai" da "daidai". ” hanyoyin ci gaba.

Wani cikas ga sake fasalin gine-gine na lokaci-lokaci da kulawa da hankali ga matsalolin fasaha shine rikicin 2014. Irin waɗannan abubuwa suna cutar da damar haɓakar ƙungiyoyi, musamman ga matasa kasuwanci kamar Dodo Pizza.

Magani masu sauri wanda ya taimaka

Matsalolin da ake buƙatar mafita. A al'ada, mafita za a iya raba kashi 2:

  • Masu sauri da suka kashe wutar kuma suna ba mu dan kadan na aminci kuma suna saya mana lokaci don canzawa.

  • Tsarin tsari kuma, sabili da haka, tsayi. Reengineering da dama kayayyaki, rarraba na monolithic gine zuwa daban-daban ayyuka (mafi yawansu ba micro, amma macro sabis, kuma akwai ƙarin game da wannan. rahoton Andrey Morevsky). 

Jerin busassun canje-canje masu sauri shine:

Scale up base master

Tabbas, abu na farko da ake yi don yaƙar kaya shine ƙara ƙarfin uwar garken. Anyi wannan don babban bayanan bayanai da sabar yanar gizo. Kash, wannan yana yiwuwa ne kawai har zuwa ƙayyadaddun iyaka; bayan haka ya zama mai tsada sosai.

Tun daga 2014, mun koma Azure; mun kuma rubuta game da wannan batu a wancan lokacin a cikin labarin "Yadda Dodo Pizza ke ba da pizza ta amfani da girgijen Azure na Microsoft" Amma bayan jerin sabar ya karu, farashin tushe ya kai iyaka. 

Rubutun bayanai don karantawa

Mun yi kwafi biyu don tushe:

Karanta Replica don buƙatun directory. Ana amfani da shi don karanta kundayen adireshi, kamar birni, titi, pizzeria, samfuran (yankin da aka canza a hankali), kuma a cikin waɗancan musaya waɗanda ke karɓar ɗan jinkiri. Akwai 2 daga cikin waɗannan kwafi, mun tabbatar da samuwarsu kamar yadda maigidan yake.

ReadReplica don buƙatun rahoto. Wannan bayanan yana da ƙarancin samuwa, amma duk rahotanni sun tafi gare ta. Suna iya samun buƙatu masu nauyi don ɗimbin ƙididdiga bayanai, amma ba sa shafar babban bayanan bayanai da mu'amalar aiki. 

Caches a cikin code

Babu caches a ko'ina a cikin lambar (gaba ɗaya). Wannan ya haifar da ƙarin, ba koyaushe ake buƙata, buƙatun zuwa bayanan da aka ɗora ba. Da farko, caches duka suna cikin ƙwaƙwalwar ajiya kuma akan sabis na cache na waje, shine Redis. Komai ya ɓace lokaci-lokaci, an ƙayyade saitunan a cikin lambar.

Sabbin sabobin don baya

Har ila yau, bayan aikace-aikacen dole ne a daidaita shi don jure ƙarin nauyi. Ya zama dole don yin tari daga sabar IIS ɗaya. Muka matsa zaman aikace-aikace daga ƙwaƙwalwar ajiya akan RedisCache, wanda ya ba da damar ƙirƙirar sabobin da yawa a bayan ma'aunin nauyi mai sauƙi tare da zagaye zagaye. Da farko, an yi amfani da Redis iri ɗaya azaman caches, sannan an raba su zuwa da yawa. 

A sakamakon haka, gine-ginen ya zama mafi rikitarwa ...

Tarihin Dodo IS Architecture: Farkon Monolith

...amma wasu daga cikin tashin hankalin sun huce.

Sa'an nan kuma ya zama dole a sake gyara abubuwan da aka ɗora, wanda shine abin da muka ɗauka. Za mu yi magana game da wannan a kashi na gaba.

source: www.habr.com

Add a comment