HighLoad++, Evgeniy Kuzovlev (EcommPay IT): seo u lokelang ho se etsa ha motsotso oa ho phomola o bitsa $ 100000

Motho e mong le e mong o bua ka lits'ebetso tsa nts'etsopele le tlhahlobo, basebetsi ba koetliso, ts'usumetso e ntseng e eketseha, empa lits'ebetso tsena ha lia lekana ha motsotso oa ts'ebetso ea ts'ebeletso e bitsa chelete e ngata haholo. Seo u lokelang ho se etsa ha u etsa litšebelisano tsa lichelete tlas'a SLA e thata? U ka eketsa ts'epo le mamello ea liphoso tsa lits'ebetso tsa hau joang, ho nka nts'etsopele le tlhahlobo ho tsoa ho equation?

HighLoad++, Evgeniy Kuzovlev (EcommPay IT): seo u lokelang ho se etsa ha motsotso oa ho phomola o bitsa $ 100000

Seboka se latelang sa HighLoad++ se tla tšoaroa ka April 6 le 7, 2020 St. Petersburg. Lintlha le litekete tsa kgokahanyo. La 9 November, 18:00. HighLoad++ Moscow 2018, Delhi + Kolkata holo. Tsena le tlhahiso.

Evgeniy Kuzovlev (kamora mona - EC): - Metsoalle, hello! Lebitso la ka ke Kuzovlev Evgeniy. Ke tsoa k'hamphaning ea EcommPay, karolo e itseng ke EcommPay IT, karolo ea IT ea sehlopha sa lik'hamphani. 'Me kajeno re tla bua ka linako tse fokolang - mabapi le mokhoa oa ho li qoba, mabapi le mokhoa oa ho fokotsa liphello tsa tsona haeba li ke ke tsa qojoa. Sehlooho se boletsoe ka tsela e latelang: "Ho etsa'ng ha motsotso oa ho fokotseha o bitsa $ 100"? Ha re sheba pele, lipalo tsa rona lia bapisoa.

EcommPay IT e etsa eng?

Re bo-mang? Ke hobane’ng ha ke eme mona ka pel’a hao? Ke hobane'ng ha ke na le tokelo ea ho u bolella ho hong moo? Hona re tla bua ka eng mona ka botlalo?

HighLoad++, Evgeniy Kuzovlev (EcommPay IT): seo u lokelang ho se etsa ha motsotso oa ho phomola o bitsa $ 100000

Sehlopha sa lik'hamphani tsa EcommPay ke batho ba fumanang chelete ea machabeng. Re sebetsana le litefo lefatšeng ka bophara - Russia, Europe, Asia Boroa-bochabela (Lefatšeng Lohle). Re na le liofisi tse 9, basebetsi ba 500 ka kakaretso, 'me ba ka tlase ho halofo ea bona ke litsebi tsa IT. Ntho e 'ngoe le e 'ngoe eo re e etsang, ntho e' ngoe le e 'ngoe eo re e etsang chelete, re ne re iketsetsa eona.

Re ngotse lihlahisoa tsa rona kaofela ('me re na le tse ngata haholo - moleng oa rona oa lihlahisoa tse kholo tsa IT re na le likarolo tse ka bang 16 tse fapaneng) rona; Rea ingolla, rea itlhahisa. 'Me hajoale re etsa litšebelisano tse ka bang milione ka letsatsi (limilione mohlomong ke tsela e nepahetseng ea ho e bua). Re khamphani e nyane haholo - re ka ba lilemo tse ts'eletseng feela.

Lilemong tse 6 tse fetileng e ne e le qalo e joalo ha bashanyana ba tla le khoebo. Ba ne ba kopantswe ke mohopolo (ho ne ho se letho le leng haese mohopolo), mme ra matha. Joaloka ntho leha e le efe e qalang, re ile ra matha ka potlako ... Ho rona, lebelo le ne le le bohlokoa ho feta boleng.

Ka nako e 'ngoe re ile ra emisa: re ile ra hlokomela hore ka tsela e itseng re ke ke ra hlola re phela ka lebelo leo le ka boleng boo 'me re lokela ho tsepamisa maikutlo ho boleng pele. Ka nako ena, re nkile qeto ea ho ngola sethala se secha se neng se tla nepahala, se lekanyetsoa, ​​'me se ka tšeptjoa. Ba ile ba qala ho ngola sethaleng sena (ba ile ba qala ho kenya chelete, ho ntlafatsa tsoelo-pele, tlhahlobo), empa ka nako e 'ngoe ba ile ba hlokomela hore tsoelo-pele le tlhahlobo ha lia ka tsa re lumella ho finyella boemo bo bocha ba boleng ba tšebeletso.

U etsa sehlahisoa se secha, u se kenya tlhahiso, empa ho ntse ho e-na le ntho e tla senyeha kae-kae. 'Me kajeno re tla bua ka mokhoa oa ho finyella boemo bo bocha ba boleng (kamoo re entseng kateng, ka phihlelo ea rona), ho nka nts'etsopele le tlhahlobo ho tsoa ho equation; re tla bua ka se fumanehang bakeng sa ts'ebetso - hore na ts'ebetso e ka iketsetsa eng, e ka fana ka eng ho hlahloba e le ho susumetsa boleng.

Linako tsa phomolo. Litaelo tsa ts'ebetso.

Kamehla e le lejoe la mantlha la mantlha, seo re tla bua ka sona kajeno ke nako ea phomolo. Lentswe le tshabehang. Haeba re na le nako ea ho phomola, tsohle li mpe ho rona. Re ntse re matha ho e phahamisa, li-admins li tšoere seva - Molimo a mpe e se ke ea oa, joalo ka ha ba bua pina eo. Sena ke seo re tla bua ka sona kajeno.

HighLoad++, Evgeniy Kuzovlev (EcommPay IT): seo u lokelang ho se etsa ha motsotso oa ho phomola o bitsa $ 100000

Ha re qala ho fetola mekhoa ea rona, re thehile melao e 4. Ke li hlahisa li-slideng:

Litaelo tsena li bonolo haholo:

HighLoad++, Evgeniy Kuzovlev (EcommPay IT): seo u lokelang ho se etsa ha motsotso oa ho phomola o bitsa $ 100000

  • Lemoha bothata kapele.
  • E tlose kapele le ho feta.
  • Thusa ho utloisisa lebaka (hamorao, bakeng sa bahlahisi).
  • Le ho tiisa mekhoa.

Ke kopa ho le hlokomelisa ntlha ea 2. Re tlosa bothata, ha re bo rarolle. Ho etsa qeto ke ea bobeli. Ho rona, ntho ea mantlha ke hore mosebelisi o sirelelitsoe bothateng bona. E tla ba teng tikolohong e ka thoko, empa tikoloho ena e ke ke ea kopana le eona. Ha e le hantle, re tla feta lihlopha tsena tse 'nè tsa mathata (tse ling ka ho qaqileng haholoanyane, tse ling ka lintlha tse fokolang), ke tla u bolella seo re se sebelisang, ke phihlelo efe e nepahetseng eo re nang le eona ka tharollo.

Tharollo ea mathata: Li etsahala neng le hore na ho etsoa joang ka tsona?

Empa re tla qala ka tatellano, re tla qala ka ntlha ea No. 2 - mokhoa oa ho felisa bothata kapele? Ho na le bothata - re hloka ho bo lokisa. "Re lokela ho etsa'ng ka see?" - potso ea sehlooho. 'Me ha re qala ho nahana ka mokhoa oa ho lokisa bothata, re ile ra iketsetsa litlhoko tse ling tseo ho rarolla bothata ho lokelang ho li latela.

HighLoad++, Evgeniy Kuzovlev (EcommPay IT): seo u lokelang ho se etsa ha motsotso oa ho phomola o bitsa $ 100000

E le ho etsa litlhokahalo tsena, re ile ra etsa qeto ea ho ipotsa potso ena: “Re na le mathata neng”? 'Me mathata, joalo ka ha a ile a bonahala, a hlaha maemong a mane:

HighLoad++, Evgeniy Kuzovlev (EcommPay IT): seo u lokelang ho se etsa ha motsotso oa ho phomola o bitsa $ 100000

  • Ho hloleha ha lisebelisoa.
  • Litšebeletso tsa kantle li hlotsoe.
  • Ho fetola mofuta oa software (phepelo e tšoanang).
  • Keketseho ea mojaro o phatlohang.

Re ke ke ra bua ka tse peli tsa pele. Ho se sebetse hantle ha hardware ho ka rarolloa habonolo feela: o tlameha ho ba le ntho e 'ngoe le e' ngoe e kopitsoang. Haeba tsena ke li-disk, li-disk li tlameha ho bokelloa ho RAID; haeba sena e le seva, seva se tlameha ho kopitsoa; haeba u na le lisebelisoa tsa marang-rang, u tlameha ho fana ka kopi ea bobeli ea lisebelisoa tsa marang-rang, ke hore, ue nka le e kopitse. 'Me haeba ho hong ho hloleha, u fetohela ho boloka matla. Ho thata ho bua letho hape mona.

Ea bobeli ke ho hlōleha ha litšebeletso tsa kantle. Ho ba bangata, tsamaiso ha se bothata ho hang, empa eseng bakeng sa rona. Kaha re sebetsana le litefello, re aggregator e emeng pakeng tsa mosebedisi (ea kenyang data ea karete ea hae) le libanka, mekhoa ea ho lefa (Visa, MasterCard, Mira, joalo-joalo). Litšebeletso tsa rona tsa kantle (litsamaiso tsa tefo, libanka) li na le ho hloleha. Ha ho rona kapa uena (haeba u na le lits'ebeletso tse joalo) re ka susumetsang sena.

Joale ho etsoa'ng? Ho na le likhetho tse peli mona. Ntlha ea pele, haeba u khona, u lokela ho etsisa tšebeletso ena ka tsela e itseng. Ka mohlala, haeba re khona, re fetisetsa sephethephethe ho tloha tšebeletsong e 'ngoe ho ea ho e' ngoe: mohlala, likarete li ne li sebetsoa ka Sberbank, Sberbank e na le mathata - re fetisetsa sephethephethe [ka maemo] ho Raiffeisen. Ntho ea bobeli eo re ka e etsang ke ho hlokomela ho hlōleha ha litšebeletso tsa ka ntle ka potlako, ka hona re tla bua ka lebelo la karabo karolong e latelang ea tlaleho.

Ha e le hantle, ho tsena tse 'nè, re ka susumetsa ka ho khetheha phetoho ea liphetolelo tsa software - ho nka mehato e tla lebisa ho ntlafatso ea boemo boemong ba ho tsamaisoa le ho latela kholo ea ho phatloha ha mojaro. Ha e le hantle, ke seo re ileng ra se etsa. Mona, hape, molaetsa o monyane...

Har'a mathata ana a mane, a 'maloa a rarolloa hang-hang haeba u na le leru. Haeba u le ho Microsoft Azhur, Ozone clouds, kapa u sebelisa maru a rona, ho tloha Yandex kapa Mail, joale bonyane bothata ba hardware bo fetoha bothata ba bona 'me ntho e' ngoe le e 'ngoe e fetoha hantle bakeng sa hau ka lebaka la ho se sebetse ha hardware.

Re k'hamphani e sa tloaelehang hanyane. Mona bohle ba bua ka "Kubernets", ka maru - ha re na "Kubernets" kapa maru. Empa re na le li-racks tsa hardware litsing tse ngata tsa data, 'me re qobelloa ho phela ka hardware ena, re qobelloa ho ikarabella bakeng sa eona kaofela. Ka hona, re tla bua ka taba ena. Kahoo, ka mathata. Tse peli tsa pele li ile tsa ntšoa ka masakaneng.

Ho fetola mofuta oa software. Metheo

Basebelisi ba rona ha ba na mokhoa oa ho fumana tlhahiso. Hobaneng ha ho le joalo? Ke feela hore re netefalitsoe ke PCI DSS, mme bahlahisi ba rona ha ba na tokelo ea ho kena "sehlahisoang". Ke eona, nako. Ho hang. Ka hona, boikarabello ba nts'etsopele bo fela hantle ka nako eo nts'etsopele e tlisang moaho bakeng sa tokollo.

HighLoad++, Evgeniy Kuzovlev (EcommPay IT): seo u lokelang ho se etsa ha motsotso oa ho phomola o bitsa $ 100000

Motheo oa rona oa bobeli oo re nang le oona, oo hape o re thusang haholo, ke ho ba sieo ha tsebo e ikhethang e sa ngolisoang. Ke tšepa hore ho tla ba joalo le ho uena. Hobane ha ho se joalo, o tla ba le mathata. Mathata a tla hlaha ha tsebo ena e ikhethang, e se nang litokomane e le sieo ka nako e nepahetseng sebakeng se nepahetseng. Ha re re u na le motho a le mong ea tsebang ho tsamaisa karolo e itseng - motho ha a eo, o phomolong kapa oa kula - ke hore, u na le mathata.

Le motheo oa boraro oo re tlileng ho oona. Re fihlile ho eona ka bohloko, mali, meokho - re fihletse qeto ea hore leha e le efe ea meaho ea rona e na le liphoso, leha e se na liphoso. Re ile ra iketsetsa qeto ena: ha re tsamaisa ntho e itseng, ha re kenya ntho e itseng tlhahisong, re na le mohaho o nang le liphoso. Re thehile litlhokahalo tseo sistimi ea rona e tlamehang ho li khotsofatsa.

Litlhoko tsa ho fetola mofuta oa software

Ho na le litlhoko tse tharo:

HighLoad++, Evgeniy Kuzovlev (EcommPay IT): seo u lokelang ho se etsa ha motsotso oa ho phomola o bitsa $ 100000

  • Re tlameha ho khutlisa thomelo morao kapele.
  • Re tlameha ho fokotsa ts'ebetso ea ts'ebetso e sa atleheng.
  • 'Me re tlameha ho khona ho tsamaisa ka potlako ka ho bapisa.
    Hantle-ntle ka tatellano eo! Hobaneng? Hobane, pele ho tsohle, ha u sebelisa phetolelo e ncha, lebelo ha le bohlokoa, empa ke habohlokoa ho uena, haeba ho na le ntho e sa tsamaeeng hantle, u potlakele ho khutlela morao 'me u be le tšusumetso e fokolang. Empa haeba u e-na le sete ea liphetolelo tsa tlhahiso, eo ho bonahalang hore ho na le phoso (ka ntle ho buluu, ho ne ho se na ho tsamaisoa, empa ho na le phoso) - lebelo la ho romelloa ka mor'a moo ke la bohlokoa ho uena. Re entse eng ho fihlela litlhoko tsee? Re ile ra sebelisa mokhoa o latelang:

    HighLoad++, Evgeniy Kuzovlev (EcommPay IT): seo u lokelang ho se etsa ha motsotso oa ho phomola o bitsa $ 100000

    E tsebahala haholo, ha re so ka re e qapa - ena ke Blue/Green deploy. Ke eng? U tlameha ho ba le kopi bakeng sa sehlopha ka seng sa li-server tseo lits'ebetso tsa hau li kentsoeng ho tsona. Kopi ke "mofuthu": ha ho na sephethephethe ho eona, empa ka nako leha e le efe sephethephethe sena se ka romeloa kopi ena. Kopi ena e na le mofuta o fetileng. 'Me ka nako ea ho romelloa, u ntša khoutu ho kopi e sa sebetseng. Ebe o fetola karolo ea sephethephethe (kapa tsohle) ho mofuta o mocha. Ka hona, e le hore u fetole phallo ea sephethephethe ho tloha phetolelong ea khale ho ea ho e ncha, u lokela ho etsa ketso e le 'ngoe feela: ho hlokahala hore u fetole balancer sebakeng se ka holimo, fetola tataiso - ho tloha ho e' ngoe ho ea ho e 'ngoe. Sena se bonolo haholo 'me se rarolla bothata ba ho fetola kapele le ho khutlisa kapele.

    Mona tharollo ea potso ea bobeli ke ho fokotsa: o ka romela karolo feela ea sephethephethe sa hau molaong o mocha, ho ea molaong o nang le khoutu e ncha (e ke e be joalo, ka mohlala, 2%). 'Me tsena 2% ha se 100%! Haeba u lahlehetsoe ke 100% ea sephethephethe sa hau ka lebaka la ts'ebetso e sa atleheng, seo se tšosa; haeba u lahlehetsoe ke 2% ea sephethephethe sa hau, seo ha se monate, empa ha se tšabe. Ho feta moo, basebelisi ba ka 'na ba se ke ba hlokomela sena, hobane maemong a mang (eseng ho bohle) mosebelisi a le mong, a hatella F5, o tla isoa ho e' ngoe, e sebetsang.

    Blue/Green deploy. Ho tsamaisa tsela

    Leha ho le joalo, hase ntho e 'ngoe le e' ngoe e bonolo haholo "Blue / Green deploy" ... Likarolo tsohle tsa rona li ka aroloa ka lihlopha tse tharo:

    • ena ke eona e ka pele (maqephe a tefo ao bareki ba rona ba a bonang);
    • ts'ebetso ea mantlha;
    • adaptara bakeng sa ho sebetsa le mekhoa ea ho lefa (libanka, MasterCard, Visa ...).

    Mme ho na le nuance mona - nuance e lutse tseleng e lipakeng tsa mela. Haeba feela u fetola 100% ea sephethephethe, ha u na mathata ana. Empa haeba u batla ho fetola 2%, u qala ho botsa lipotso: "U ka etsa see joang?" Ntho e bonolo ka ho fetisisa ke ho ea pele: o ka theha Round Robin ka nginx ka khetho e sa reroang, 'me u na le 2% ho ea ka ho le letšehali, 98% ho ea ka ho le letona. Empa sena ha se kamehla se loketseng.

    Mohlala, molemong oa rona, mosebelisi o sebelisana le sistimi ka kopo e fetang e le 'ngoe. Sena se tloaelehile: 2, 3, 4, 5 likopo - litsamaiso tsa hau li ka tšoana. 'Me haeba ho le bohlokoa ho uena hore likōpo tsohle tsa mosebedisi li tle mocheng o le mong oo kopo ea pele e tlileng ho oona, kapa (ntlha ea bobeli) likōpo tsohle tsa mosebedisi li tla moleng o mocha ka mor'a ho fetola (a ka be a qalile ho sebetsa pele ho moo). tsamaiso, pele ho phetoho), - joale kabo ena e sa reroang ha e ea lokela ho uena. Joale ho na le likhetho tse latelang:

    HighLoad++, Evgeniy Kuzovlev (EcommPay IT): seo u lokelang ho se etsa ha motsotso oa ho phomola o bitsa $ 100000

    Khetho ea pele, e bonolo ka ho fetisisa, e itšetlehile ka litekanyetso tsa motheo tsa mofani (IP Hash). U na le IP, 'me u e arola ho tloha ho le letona ho ea ho le letšehali ka aterese ea IP. Ebe nyeoe ea bobeli eo ke e hlalositseng e tla u sebeletsa, ha ho tsamaisoa ho etsahala, mosebelisi a ka se a qala ho sebetsa le sistimi ea hau, 'me ho tloha motsotsong oa ho romelloa likopo tsohle li tla ea moleng o mocha (ho ea ho o tšoanang, o re).

    Haeba ka lebaka le itseng sena se sa lumellane le uena mme o tlameha ho romella likopo moleng oo kopo ea pele ea mosebelisi e fihlileng teng, joale o na le likhetho tse peli ...
    Khetho ea pele: o ka reka nginx+ e lefelloang. Ho na le mochini oa "Sticky sessions" oo, ka kopo ea pele ea mosebelisi, o abelang mosebelisi nako ebe o e tlamella ho e mong kapa e mong ho ea holimo. Likopo tsohle tse latelang tsa basebelisi nakong ea bophelo bohle ba lenaneo li tla romelloa sebakeng se le seng moo lenaneo le rometsoeng teng.

    Sena ha sea ka sa re tšoanela hobane re ne re se re ntse re e-na le nginx e tloaelehileng. Ho fetohela ho nginx + ha se hore e turu, ke feela hore e ne e le bohloko ho rona mme e ne e sa nepahala haholo. "Sticks Sessions", mohlala, ha ea ka ea sebetsa molemong oa rona ka lebaka le bonolo la hore "Sticks Sessions" ha e lumelle ho tsamaisa ho ipapisitsoe le "Ebang-kapa". Ha u le moo u ka hlakisa seo re "Sticks Sessions" re se etsang, ka mohlala, ka aterese ea IP kapa ka aterese ea IP le li-cookies kapa ka poso, empa "Ebang-kapa" e rarahane le ho feta moo.

    Ka hona, re ile ra tla ho khetho ea bone. Re nkile nginx ka steroids (ena ke openresty) - ena ke nginx e ts'oanang, e ts'ehetsang ho kenyelletsoa ha mangolo a ho qetela. U ka ngola lengolo la ho qetela, u le fe "phomolo e bulehileng", 'me mongolo ona oa ho qetela o tla etsoa ha kopo ea mosebelisi e fihla.

    'Me re ngotse, ha e le hantle, script e joalo, re ipehile "openresti"' me bukeng ena re hlophisa li-parameter tse fapaneng tsa 6 ka concatenation "Kapa". Ho itšetlehile ka boteng ba parameter e le 'ngoe kapa e' ngoe, rea tseba hore mosebedisi o tlile leqepheng le leng kapa le leng, mola o mong kapa o mong.

    Blue/Green deploy. Melemo le go tlhoka mesola

    Ha e le hantle, mohlomong ho ne ho ka khoneha ho e etsa hore e be bonolo haholoanyane (sebelisa "Sticky Sessions" e tšoanang), empa re boetse re na le nuance e joalo hoo e seng feela mosebedisi ea sebelisanang le rona ka har'a moralo oa ts'ebetso e le 'ngoe ea transaction e le' ngoe ... Empa mekhoa ea ho lefa e boetse e sebelisana le rona: Ka mor'a hore re sebetsane le transaction (ka ho romela kopo tsamaisong ea ho lefa), re fumana pholiso.
    Ha re re, haeba ka har'a potoloho ea rona re ka fetisetsa aterese ea IP ea mosebelisi ho likopo tsohle mme ra arola basebelisi ho latela aterese ea IP, joale re ke ke ra bua "Visa" e tšoanang: "Dude, re k'hamphani e joalo ea retro, ho bonahala eka re na le "Visa". ho ba oa machaba (websaeteng le Russia)... Ka kopo, re fe aterese ea IP ea mosebedisi sebakeng se eketsehileng, protocol ea hau e lekane"! Ho hlakile hore ba ke ke ba lumellana.

    HighLoad++, Evgeniy Kuzovlev (EcommPay IT): seo u lokelang ho se etsa ha motsotso oa ho phomola o bitsa $ 100000

    Ka hona, sena ha sea ka sa sebetsa ho rona - re entse openresty. Ka lebaka leo, ka routing re na le ntho e kang ena:

    Blue/Green Deployment, ka hona, e na le melemo eo ke e boletseng le mathata.

    Litsietsi tse peli:

    • o hloka ho khathatseha ka ho tsamaisa;
    • bothata ba bobeli bo ka sehloohong ke litšenyehelo.

    U hloka li-server tse ngata ka makhetlo a mabeli, u hloka lisebelisoa tse sebetsang habeli, u hloka ho sebelisa boiteko bo habeli ho boloka zoo ena kaofela.

    Ka tsela, har'a melemo ho na le ntho e 'ngoe hape eo ke sa kang ka e bua pele: u na le sebaka sa polokelo tabeng ea kholo ea mojaro. Haeba u na le kholo e phatlohileng ea mojaro, u na le palo e kholo ea basebelisi, ebe u kenyelletsa mohala oa bobeli ho 50 ho isa ho 50 kabong - 'me hang-hang u na le li-server tsa x2 sehlopheng sa hau ho fihlela u rarolla bothata ba ho ba le li-server tse ngata.

    Joang ho etsa deployment ka potlako?

    Re buile ka mokhoa oa ho rarolla bothata ba ho fokotsa le ho khutlisa kapele, empa potso e sala: "Joang ho tsamaisa kapele?"

    HighLoad++, Evgeniy Kuzovlev (EcommPay IT): seo u lokelang ho se etsa ha motsotso oa ho phomola o bitsa $ 100000

    E khuts'oane ebile e bonolo mona.

    • U tlameha ho ba le CD system (Continuous Delivery) - u ke ke ua phela ntle le eona. Haeba u na le seva e le 'ngoe, u ka e sebelisa ka letsoho. Re na le li-server tse ka bang sekete le halofo le li-handles tse sekete le halofo, ha e le hantle - re ka lema lefapha le boholo ba kamore ena hore feela re e sebelise.
    • Phano e tlameha ho tsamaisana. Haeba thomello ea hau e le tatellano, joale tsohle li mpe. Seva e le 'ngoe e tloaelehile, u tla be u tsamaisa li-server tse sekete le halofo letsatsi lohle.
    • Hape, bakeng sa ho potlakisa, mohlomong sena ha se sa hlokahala. Nakong ea ho romelloa, morero o atisa ho hahoa. U na le projeke ea webo, ho na le karolo e ka pele (o etsa pakete ea webo moo, o bokella npm - ntho e joalo), mme ts'ebetso ena, ha e le hantle, ke ea nakoana - metsotso e 5, empa metsotso ena e 5 e ka ba teng. ho nyatsa. Ke ka lebaka leo, ka mohlala, re sa etseng joalo: re tlositse metsotso ena e 5, re tsamaisa lintho tsa khale.

      Artifact ke eng? Setšoantšo sa maiketsetso ke mohaho o kopantsoeng oo likarolo tsohle tsa kopano li seng li phethiloe. Re boloka artifact ena sebakeng sa polokelo ea lintho tsa khale. Ka nako e 'ngoe re ne re sebelisa lipolokelo tse peli tse joalo - e ne e le Nexus mme joale e se e le jFrog Artifactory) Re kile ra sebelisa "Nexus" hobane re ile ra qala ho sebelisa mokhoa ona lits'ebetsong tsa java (e ne e e tšoanela hantle). Eaba ba kenya tse ling tsa likopo tse ngotsoeng ka PHP moo; le "Nexus" e ne e se e sa tšoanelehe, ka hona re khethile jFrog Artefactory, e ka khonang ho etsa ntho e 'ngoe le e' ngoe. Re bile re fihla ntlheng ea hore sebakeng sena sa polokelo ea matsoho re boloka liphutheloana tsa rona tsa binary tseo re li bokellang bakeng sa li-server.

    Keketseho ea mojaro o phatlohang

    Re buile ka ho fetola mofuta oa software. Ntho e latelang eo re nang le eona ke keketseho e phatlohang ea mojaro. Mona, mohlomong ke bolela ka kholo e phatlohang ea mojaro eseng ntho e nepahetseng ...

    Re ngotse sistimi e ncha - e shebane le lits'ebeletso, ea feshene, e ntle, basebetsi hohle, mela hohle, asynchrony hohle. 'Me lits'ebetsong tse joalo, data e ka phalla ka phallo e fapaneng. Bakeng sa khoebo ea pele, ho ka sebelisoa mosebeletsi oa 1, 3, 10, bakeng sa khoebo ea bobeli - ea 2, ea 4, ea 5. 'Me kajeno, a re re, hoseng u na le phallo ea data e sebelisang basebetsi ba bararo ba pele,' me mantsiboea e fetoha haholo, 'me ntho e' ngoe le e 'ngoe e sebelisa basebetsi ba bang ba bararo.

    'Me mona hoa fumaneha hore ka tsela e itseng o hloka ho lekanya basebetsi, o hloka ho lekanya lits'ebeletso tsa hau ka tsela e itseng, empa ka nako e ts'oanang thibela bloat ea lisebelisoa.

    HighLoad++, Evgeniy Kuzovlev (EcommPay IT): seo u lokelang ho se etsa ha motsotso oa ho phomola o bitsa $ 100000

    Re hlalositse litlhoko tsa rona. Litlhoko tsena li bonolo haholo: hore ho be le ho sibolloa ha litšebeletso, parameterization - ntho e 'ngoe le e' ngoe e tloaelehile bakeng sa ho haha ​​​​litsamaiso tse joalo tse ka senyehang, ntle le ntlha e le 'ngoe - ho theoha ha lisebelisoa. Re itse ha re so itokisetse ho fokotsa lisebelisoa e le hore li-server li futhumatsa moea. Re nkile "Consul", re nkile "Nomad", e laolang basebetsi ba rona.

    Ke hobane’ng ha see e le bothata ho rōna? Ha re khutlele morao hanyane. Hona joale re na le mekhoa ea ho lefa e ka bang 70 ka morao ho rona. Hoseng, sephethephethe se feta Sberbank, joale Sberbank e ile ea oa, mohlala, 'me re e fetisetsa tsamaisong e' ngoe ea tefo. Re ne re e-na le basebetsi ba 100 pele ho Sberbank, 'me ka mor'a moo re hloka ho eketsa basebetsi ba 100 haholo bakeng sa tsamaiso e' ngoe ea ho lefa. Mme ke ntho e lakatsehang hore tsena tsohle di etsahale ntle le ho nka karolo ha motho. Hobane haeba ho na le karolo ea batho, ho lokela hore ho be le moenjiniere ea lutseng moo 24/7, ea lokelang ho etsa sena feela, hobane ho hlōleha ho joalo, ha litsamaiso tse 70 li le ka morao ho uena, li etsahala khafetsa.

    Ka hona, re ile ra sheba Nomad, e nang le IP e bulehileng, mme ra ngola ntho ea rona, Scale-Nomad - ScaleNo, e etsang hoo e batlang e le tse latelang: e lekola kholo ea mokoloko le ho fokotsa kapa ho eketsa palo ea basebetsi ho itšetlehile ka matla a matla. ea tatellano. Ha re e etsa, re ile ra nahana: "Mohlomong re ka bula mohloli oa eona?" Eaba ba mo sheba - o ne a le bonolo joaloka kopecks tse peli.

    Ho fihlela joale ha re e-s'o e bule, empa haeba ka tšohanyetso ka mor'a tlaleho, ka mor'a ho hlokomela hore u hloka ntho e joalo, ua e hloka, mabitso a ka a le slide ea ho qetela - ka kopo, ngolla ho 'na. Haeba bonyane ho na le batho ba 3-5, re tla e tšehetsa.

    HighLoad++, Evgeniy Kuzovlev (EcommPay IT): seo u lokelang ho se etsa ha motsotso oa ho phomola o bitsa $ 100000

    E sebetsa joang? Ha re shebeng! Ha re sheba pele: ka lehlakoreng le letšehali ho na le karolo ea rona ea ho shebella: ena ke mola o le mong, ka holimo ke nako ea ts'ebetso ea ketsahalo, bohareng ke palo ea litšebelisano, ka tlaase ke palo ea basebetsi.

    Haeba u sheba, ho na le glitch setšoantšong sena. Ka chate e holimo, e 'ngoe ea lichate e ile ea senyeha ka metsotsoana ea 45 - e' ngoe ea mekhoa ea ho lefa e ile ea theoha. Hang-hang, sephethephethe se ile sa tlisoa ka metsotso ea 2 'me mokoloko o ile oa qala ho hōla tsamaisong e' ngoe ea tefo, moo ho neng ho se na basebetsi (ha rea ​​ka ra sebelisa lisebelisoa - ho fapana le hoo, re lahlile mohloli ka nepo). Re ne re sa batle ho futhumatsa - ho ne ho e-na le palo e fokolang, basebetsi ba ka bang 5-10, empa ba ne ba sa khone ho mamella.

    Setšoantšo sa ho qetela se bontša "hump", e bolelang feela hore "Skaleno" e imenne habeli chelete ena. 'Me joale, ha graph e theoha hanyenyane, o ile ae fokotsa hanyenyane - palo ea basebetsi e fetotsoe ka mokhoa o itekanetseng. Ke kamoo ntho ena e sebetsang kateng. Re buile ka ntlha ea 2 - "Mokhoa oa ho tlosa mabaka kapele."

    Tlhokomelo. Joang ho lemoha bothata kapele?

    Joale ntlha ea pele ke "Joang ho lemoha bothata kapele?" Tlhokomelo! Re tlameha ho utloisisa lintho tse itseng kapele. Ke lintho life tseo re lokelang ho li utloisisa kapele?

    HighLoad++, Evgeniy Kuzovlev (EcommPay IT): seo u lokelang ho se etsa ha motsotso oa ho phomola o bitsa $ 100000

    Lintho tse tharo!

    • Re tlameha ho utloisisa le ho utloisisa kapele ts'ebetso ea lisebelisoa tsa rona.
    • Re tlameha ho utloisisa ho hloleha kapele le ho beha leihlo tšebetso ea litsamaiso tse kantle ho rona.
    • Ntlha ea boraro ke ho khetholla liphoso tse utloahalang. Sena ke ha tsamaiso e sebetsa bakeng sa hau, ntho e 'ngoe le e' ngoe e tloaelehile ho latela lipontšo tsohle, empa ho na le ho hong ho sa tsamaeeng hantle.

    Mohlomong nke ke ka u bolella letho le monate mona. Ke tla ba Captain Obvious. Re ile ra sheba se neng se le 'marakeng. Re na le "zuo e monate". Ona ke mofuta oa zoo oo re nang le oona hona joale:

    HighLoad++, Evgeniy Kuzovlev (EcommPay IT): seo u lokelang ho se etsa ha motsotso oa ho phomola o bitsa $ 100000

    Re sebelisa Zabbix ho lekola lisebelisoa, ho beha leihlo matšoao a mantlha a li-server. Re sebelisa Okmeter bakeng sa databases. Re sebelisa "Grafana" le "Prometheus" bakeng sa matšoao a mang kaofela a sa lumellaneng le tse peli tsa pele, tse ling li na le "Grafana" le "Prometheus", 'me tse ling li na le "Grafana" le "Influx" le Telegraf.

    Selemong se fetileng re ne re batla ho sebelisa New Relic. Ntho e makatsang, e ka etsa tsohle. Empa ka hohle kamoo a ka khonang ho etsa ntho e 'ngoe le e' ngoe, o turu haholo. Ha re hōla ho fihlela palo ea li-server tse likete tse 1,5, morekisi e mong o ile a tla ho rōna ’me a re: “A re phetheng tumellano ea selemo se tlang.” Re ile ra sheba theko mme ra re che, re ke ke ra etsa joalo. Joale re lahla New Relic, re na le li-server tse ka bang 15 tse setseng tlas'a leihlo la New Relic. Theko e ile ea bonahala e le hlaha ka ho feletseng.

    Mme ho na le sesebelisoa se le seng seo re se sebelisitseng ka borona - sena ke Debugger. Qalong re ne re e bitsa “Bagger,” empa ka mor’a moo tichere ea Senyesemane e ile ea feta, ea tšeha habohloko, ’me ea e reha lebitso la “Debagger.” Ke eng? Ena ke sesebelisoa seo, ha e le hantle, ka metsotsoana ea 15-30 karolong e 'ngoe le e' ngoe, joalo ka "lebokose le letšo" la tsamaiso, le tsamaisa liteko ka kakaretso ea ts'ebetso ea karolo.

    Ka mohlala, haeba ho na le leqephe le ka ntle (leqephe la tefo), o mpa a le bula ebe o sheba kamoo le lokelang ho shebahala kateng. Haeba sena se ntse se sebetsa, o romela tlhahlobo ea "transaction" mme o etsa bonnete ba hore "transaction" ena e fihla. Haeba sena e le kamano le mekhoa ea ho lefa, re chesa kopo ea teko ka tsela e nepahetseng, moo re ka khonang, 'me re bone hore ntho e' ngoe le e 'ngoe e tsamaea hantle le rona.

    Ke matšoao afe a bohlokoa bakeng sa ho beha leihlo?

    Ke eng eo re e behang leihlo haholo-holo? Ke matšoao afe a bohlokoa ho rona?

    HighLoad++, Evgeniy Kuzovlev (EcommPay IT): seo u lokelang ho se etsa ha motsotso oa ho phomola o bitsa $ 100000

    • Nako ea karabelo / RPS ka mahlakoreng ke sesupo sa bohlokoa haholo. Hang-hang o araba hore ho na le ho hong ho phoso ka uena.
    • Palo ea melaetsa e sebetsitsoeng meleng eohle.
    • Palo ea basebetsi.
    • Melemo ea ho nepahala ea mantlha.

    Ntlha ea ho qetela ke "khoebo", "khoebo" metric. Haeba u batla ho beha leihlo ntho e tšoanang, u hloka ho hlalosa metrics e le 'ngoe kapa tse peli tseo e leng matšoao a mantlha ho uena. Meteriki ea rona ke ts'ebetso (ena ke karo-karolelano ea palo ea lipalangoang tse atlehileng ho phallo ea kakaretso ea transaction). Haeba ntho e fetoha ho eona ka nako ea metsotso e 5-10-15, ho bolela hore re na le mathata (haeba e fetoha haholo).

    Seo se shebahalang ho rona ke mohlala oa e 'ngoe ea liboto tsa rona:

    HighLoad++, Evgeniy Kuzovlev (EcommPay IT): seo u lokelang ho se etsa ha motsotso oa ho phomola o bitsa $ 100000

    Ka lehlakoreng le letšehali ho na le li-graph tse 6, sena se latela mela - palo ea basebetsi le palo ea melaetsa meleng. Ka lehlakoreng le letona - RPS, RTS. Ka tlase ke metric e tšoanang ea "khoebo". 'Me ka metric ea "khoebo" re ka bona hang-hang hore ho na le ntho e sa tsamaeeng hantle lirapeng tse peli tse bohareng ... Ena ke tsamaiso e' ngoe feela e emeng ka mor'a rona e oeleng.

    Taba ea bobeli eo re neng re tlameha ho e etsa ke ho beha leihlo ho oa ha litsamaiso tsa litefiso tsa kantle. Mona re nkile OpenTracing - mochini, maemo, paradigm e o lumellang ho latela lits'ebetso tse ajoang; mme ya fetolwa ho se hokae. Paradigm e tloaelehileng ea OpenTracing e re re theha mohlala bakeng sa kopo ea motho ka mong. Re ne re sa hloke sena, mme re se phuthetse ka kakaretso, mohlala oa kakaretso. Re entse sesebelisoa se re lumellang ho latela lebelo la litsamaiso tse ka morao ho rona.

    HighLoad++, Evgeniy Kuzovlev (EcommPay IT): seo u lokelang ho se etsa ha motsotso oa ho phomola o bitsa $ 100000

    Grafu e re bontša hore e 'ngoe ea mekhoa ea ho lefa e qalile ho arabela ka metsotsoana ea 3 - re na le mathata. Ho feta moo, ntho ena e tla itšoara ha mathata a qala, ka nako ea metsotsoana e 20-30.

    ‘Me the third class of monitoring errors tse teng ke logic monitoring .

    Ho bua ’nete, ke ne ke sa tsebe hore na ke toroe eng selaeteng sena, hobane e ne e se e le nako e telele re ntse re batla ntho e neng e tla re tšoanela ’marakeng. Ha rea ​​ka ra fumana letho, kahoo re ile ra tlameha ho iketsetsa eona.

    HighLoad++, Evgeniy Kuzovlev (EcommPay IT): seo u lokelang ho se etsa ha motsotso oa ho phomola o bitsa $ 100000

    Ke bolela eng ka ho beha leihlo ka tsela e utloahalang? Hantle, nahana: u iketsetsa tsamaiso (mohlala, Tinder clone); u e entse, ua e thakhola. Mookameli ea atlehileng Vasya Pupkin oe kentse fonong ea hae, o bona ngoananyana moo, a mo rata ... 'me tse ling ha li ee ho ngoanana - joalo-joalo o ea ho molebeli oa tšireletso Mikhalych ho tloha setsing se le seng sa khoebo. Mookameli o theohela mokatong o ka tlaase, ebe oa ipotsa: “Ke hobane’ng ha molebeli eo Mikhalych a bososela hakaale le eena?”

    Maemong a joalo ... Ho rona, boemo bona bo utloahala bo fapane hanyane, hobane (ke ngotse) sena ke tahlehelo ea botumo e lebisang ho tahlehelo ea lichelete ka tsela e sa tobang. Maemo a rona a fapane: re ka lahleheloa ke lichelete ka kotloloho - mohlala, haeba re entse khoebo e atlehile, empa ha ea atleha (kapa ka tsela e fapaneng). Ke ile ka tlameha ho ngola sesebelisoa sa ka se latelang palo ea litšebelisano tse atlehileng ha nako e ntse e ea ho sebelisa matšoao a khoebo. Ha kea fumana letho 'marakeng! Ena ke eona mohopolo oo ke neng ke batla ho o fetisa. Ha ho letho 'marakeng ho rarolla bothata ba mofuta ona.

    Ena e ne e le mabapi le mokhoa oa ho lemoha bothata kapele.

    Mokhoa oa ho tseba mabaka a ho romelloa

    Sehlopha sa boraro sa mathata ao re a rarollang ke kamor’a hore re bone bothata, kamor’a hore re bo felise, e ka ba hantle hore re utloisise lebaka la nts’etsopele, ho lekoa, le ho etsa ho hong ka bona. Ka hona, re hloka ho batlisisa, re hloka ho phahamisa likutu.

    HighLoad++, Evgeniy Kuzovlev (EcommPay IT): seo u lokelang ho se etsa ha motsotso oa ho phomola o bitsa $ 100000

    Haeba re bua ka li-logs (lebaka le ka sehloohong ke li-logs), bongata ba li-log tsa rona li ho ELK Stack - hoo e batlang e le motho e mong le e mong o na le se tšoanang. Bakeng sa ba bang, e ka 'na ea se ke ea e-ba ELK, empa haeba u ngola li-logs ka li-gigabytes, joale kapele kapa hamorao u tla tla ho ELK. Re li ngola ka terabytes.

    HighLoad++, Evgeniy Kuzovlev (EcommPay IT): seo u lokelang ho se etsa ha motsotso oa ho phomola o bitsa $ 100000

    Ho na le bothata mona. Re ile ra e lokisa, ra lokisa phoso bakeng sa mosebedisi, ra qala ho cheka se neng se le teng, ra hloa Kibana, ra kenya id ea transaction moo 'me ra fumana lesela la maoto le kang lena (le bontša haholo). 'Me ha ho letho le hlakileng ka lesela lena la maoto. Hobaneng? E, hobane ha ho hlake hore na ke karolo efe eo e leng ea mosebeletsi, karolo efe e leng ea karolo efe. Mme ka nako eo re ile ra elelloa hore re hloka ho ts'oaroa - eona OpenTracing eo ke buileng ka eona.

    Re ile ra nahana sena selemong se fetileng, re ile ra lebisa tlhokomelo ea rona 'marakeng,' me ho ne ho e-na le lisebelisoa tse peli moo - "Zipkin" le "Jaeger". "Jager" ha e le hantle ke mojalefa ea joalo oa maikutlo, mohlahlami oa "Zipkin". Ntho e 'ngoe le e' ngoe e ntle ho Zipkin, ntle le hore ha e tsebe ho kopanya, ha e tsebe ho kenyelletsa lifate ka morao, nako feela ea ho latela. 'Me "Jager" e tšehetsa sena.

    Re shebile "Jager": o ka sebelisa lisebelisoa tsa lisebelisoa, o ka ngola ka Api (tekanyetso ea Api bakeng sa PHP ka nako eo, leha ho le joalo, e ne e sa amoheloe - ena e ne e le selemo se fetileng, empa joale e se e amohetsoe), empa ho na le. ho hang e ne e se moreki. "Ho lokile," re ile ra nahana, 'me ra ngolla moreki oa rona. Re fumane eng? Sena ke ka mokhoa oo se shebahalang ka ona:

    HighLoad++, Evgeniy Kuzovlev (EcommPay IT): seo u lokelang ho se etsa ha motsotso oa ho phomola o bitsa $ 100000

    Ho Jaeger, molaetsa o mong le o mong o entsoe. Ke hore, ha mosebeletsi a bula tsamaiso, o bona li-blocks tse le 'ngoe kapa tse peli bakeng sa kopo e' ngoe le e 'ngoe e kenang (1-2-3 - palo ea likōpo tse kenang ho tsoa ho mosebedisi, palo ea li-blocks). Ho nolofaletsa basebelisi, re kentse li-tag ho li-log le tatellano ea nako. Ka hona, ha ho ka ba le phoso, kopo ea rona e tla tšoaea logong ka tag e nepahetseng ea Phoso. O ka sefa ka tag ea Phoso 'me ho tla hlaha liphapang tse nang le boloko bona tse nang le phoso feela. Sena ke tsela eo e shebahalang ka eona ha re holisa span:

    HighLoad++, Evgeniy Kuzovlev (EcommPay IT): seo u lokelang ho se etsa ha motsotso oa ho phomola o bitsa $ 100000

    Ka har'a span ho na le sete ea mesaletsa. Tabeng ena, tsena ke litsela tse tharo tsa teko, 'me mohlala oa boraro o re bolella hore phoso e etsahetse. Ka nako e ts'oanang, mona re bona mohlala oa nako: re na le tekanyo ea nako holimo, 'me re bona hore na ke nako efe ea nako ena kapa log eo e tlalehiloeng.

    Ka lebaka leo, lintho li ile tsa re tsamaela hantle. Re ngotse katoloso ea rona mme re e bula mohloli. Haeba u batla ho sebetsa ka ho ts'oara, haeba u batla ho sebetsa le "Jager" ho PHP, ho na le katoloso ea rona, re amohelehile ho e sebelisa, joalo ka ha ba re:

    HighLoad++, Evgeniy Kuzovlev (EcommPay IT): seo u lokelang ho se etsa ha motsotso oa ho phomola o bitsa $ 100000

    Re na le katoloso ena - ke moreki oa OpenTracing Api, e entsoe joalo ka php-extention, ke hore, o tla hloka ho e kopanya le ho e kenya ho sistimi. Selemong se fetileng ho ne ho se letho le fapaneng. Hona joale ho na le bareki ba bang ba tšoanang le likarolo. Mona ke ho uena: ebang u pompa likarolo ka moqapi, kapa u sebelisa katoloso ho uena.

    Litekanyetso tsa khoebo

    Re buile ka melao e meraro. Taelo ea bone ke ho tiisa mekhoa. See se bua ka eng? E mabapi le sena:

    HighLoad++, Evgeniy Kuzovlev (EcommPay IT): seo u lokelang ho se etsa ha motsotso oa ho phomola o bitsa $ 100000

    Ke hobane'ng ha lentsoe "corporate" le le teng moo? Eseng hobane re le k'hamphani e kholo kapa ea tsamaiso, che! Ke ne ke batla ho sebelisa lentsoe "corporate" mona moelelong oa hore khampani e 'ngoe le e' ngoe, sehlahisoa se seng le se seng se lokela ho ba le litekanyetso tsa sona, ho kenyeletsa le uena. Re na le litekanyetso life?

    HighLoad++, Evgeniy Kuzovlev (EcommPay IT): seo u lokelang ho se etsa ha motsotso oa ho phomola o bitsa $ 100000

    • Re na le melaoana ea thomello. Ha re tsamaee kae kapa kae ntle le eena, re ke ke ra khona. Re sebelisa makhetlo a ka bang 60 ka beke, ke hore, re tsamaisa hoo e ka bang khafetsa. Ka nako e ts'oanang, re na le, ka mohlala, melaong ea ho tsamaisa thepa e sa tloaelehang ea ho romelloa ka Labohlano - ha e le hantle, ha re sebelise.
    • Re hloka litokomane. Ha ho karolo e le 'ngoe e ncha e kenang tlhahiso haeba ho se na litokomane bakeng sa eona, le haeba e hlahile tlas'a pene ea litsebi tsa rona tsa RnD. Re hloka ho bona litaelo tsa phepelo, 'mapa oa ho beha leihlo le tlhaloso e hlakileng (hantle, joalo ka ha baetsi ba mananeo ba ka ngola) hore na karolo ena e sebetsa joang, ho e rarolla joang.
    • Ha re rarolle sesosa sa bothata, empa bothata - seo ke seng ke se boletse. Ho bohlokoa ho rona ho sireletsa mosebelisi mathateng.
    • Re na le li-clearance. Ka mohlala, ha re nke hore ke nako ea phomolo haeba re lahleheloa ke 2% ea sephethephethe nakong ea metsotso e 'meli. Sena ha sea kenyelletsoa lipalo-palo tsa rona. Haeba e le ho feta ho latela liphesente kapa ea nakoana, re se re ntse re bala.
    • 'Me re lula re ngola li-postmortem. Ho sa tsotellehe hore na ho etsahala'ng ho rona, boemo leha e le bofe boo motho a itšoereng ka mokhoa o sa tloaelehang tlhahisong e tla bonahala ka mor'a lefu. Postmortem ke tokomane eo ho eona u ngolang se etsahetseng ho uena, nako e qaqileng, seo u se entseng ho e lokisa le (sena ke thibelo e tlamang!) seo u tla se etsa ho thibela sena ho etsahala nakong e tlang. Sena sea hlokahala ebile sea hlokahala bakeng sa tlhahlobo e latelang.

    Nako ea phomolo e nkoa e le eng?

    HighLoad++, Evgeniy Kuzovlev (EcommPay IT): seo u lokelang ho se etsa ha motsotso oa ho phomola o bitsa $ 100000

    See sohle se ile sa fella ka eng?

    Sena se ile sa lebisa tabeng ea hore (re ne re e-na le mathata a itseng ka botsitso, sena ha sea ka sa lumellana le bareki kapa rona) likhoeling tse 6 tse fetileng pontšo ea rona ea botsitso e ne e le 99,97. Re ka re sena ha se haholo. E, ho na le seo re lokelang ho se loanela. Ka pontšo ena, hoo e ka bang halofo ke botsitso, joalokaha ho ka boleloa, eseng ea rona, empa ea firewall ea rona ea kopo ea websaete, e emeng ka pel'a rona mme e sebelisoa e le tšebeletso, empa bareki ha ba tsotelle sena.

    Re ile ra ithuta ho robala bosiu. Qetellong! Likhoeli tse tšeletseng tse fetileng ha rea ​​ka ra khona. Mme ntlheng ena ka liphetho, ke kopa ho ngola molaetsa o le mong. Bosiung ba maobane ho bile le tlaleho e babatsehang mabapi le tsamaiso ea taolo ea setsi sa nyutlelie. Haeba batho ba ngotseng sistimi ena ba nkutloa, ka kopo lebala ka seo ke se buileng ka "2% ha se nako ea phomolo." Ho uena, 2% ke nako ea ho phomola, le haeba e le metsotso e 'meli!

    Ke phetho! Lipotso tsa hao.

    HighLoad++, Evgeniy Kuzovlev (EcommPay IT): seo u lokelang ho se etsa ha motsotso oa ho phomola o bitsa $ 100000

    Mabapi le li-balancers le ho falla ha database

    Potso e tsoang ho bamameli (kamora mona - B): - Lumela. Ke leboha haholo ka tlaleho e joalo ea admin! Potso e khuts'oane ka li-balancers tsa hau. U boletse hore u na le WAF, ke hore, joalo ka ha ke e utloisisa, u sebelisa mofuta o mong oa balancer ea kantle ...

    EK: - Che, re sebelisa lits'ebeletso tsa rona joalo ka sekala. Tabeng ena, WAF ke sesebelisoa sa ts'ireletso sa DDoS feela bakeng sa rona.

    NAKO: - Na u ka bua mantsoe a seng makae ka li-balancers?

    EK: - Joalokaha ke se ke boletse, sena ke sehlopha sa li-server tse bulehileng. Hona joale re na le lihlopha tse 5 tsa polokelo tse arabelang ka mokhoa o ikhethileng... ke hore, seva e sebetsang ka mokhoa o ikhethileng, e emela sephethephethe feela. Ka hona, ho utloisisa hore na re tšoere bokae: hona joale re na le phallo e tloaelehileng ea sephethephethe sa li-megabits tse makholo a 'maloa. Ba phela hantle, ba ikutloa ba le betere, ha ba ikhathatse.

    NAKO: – Hape potso e bonolo. Mona ke Blue/Green deployment. U etsa eng, mohlala, ka ho falla ha database?

    EK: - Potso e ntle! Sheba, sebakeng sa Blue/Green deployment re na le mela e arohaneng bakeng sa mohala ka mong. Ke hore, haeba re bua ka mela ea liketsahalo e fetisoang ho tloha ho basebetsi ho ea ho mosebetsi, ho na le mela e arohaneng bakeng sa mola o moputsoa le oa mola o motala. Haeba re bua ka database ka boeona, joale re ile ra e fokotsa ka boomo ka hohle kamoo re ka khonang, ra tsamaisa ntho e 'ngoe le e' ngoe ka meleng; ka har'a database re boloka feela mekotla ea lik'hamphani. 'Me stack ea rona ea transaction e tšoana le mehala eohle. Ka database ea moelelo ona: ha re e arole ka botala le botala, hobane mefuta e 'meli ea khoutu e tlameha ho tseba se etsahalang ka transaction.

    Metsoalle, ke boetse ke na le moputso o monyenyane oa ho le khothatsa - buka. 'Me ke lokela ho e fuoa bakeng sa potso e ntle ka ho fetisisa.

    NAKO: - Lumela. Ke leboha tlaleho. Potso ke ena. U beha leihlo litefo, u beha leihlo lits'ebeletso tseo u buisanang le tsona ... Empa u beha leihlo joang e le hore motho ka tsela e itseng a tle leqepheng la hau la tefo, a etse tefo, mme morero o mo kenye chelete? Ke hore, u beha leihlo joang hore mohoebi o teng le hore o amohetse mohala oa hau?

    EK: - "Mohoebi" bakeng sa rona tabeng ena ke ts'ebeletso e tšoanang hantle le ea tsamaiso ea ho lefa. Re beha leihlo lebelo la karabo ea mohoebi.

    Mabapi le encryption ea database

    NAKO: - Lumela. Ke na le potso e amanang hanyane. U na le lintlha tsa bohlokoa tsa PCI DSS. Ke ne ke batla ho tseba hore na u boloka li-PAN joang meleng eo u hlokang ho fetisetsa ho eona? O sebelisa encryption efe kapa efe? 'Me sena se lebisa potsong ea bobeli: ho ea ka PCI DSS, ho hlokahala hore nako le nako ho ngolisoe database ha ho ka ba le liphetoho (ho lelekoa ha batsamaisi, joalo-joalo) - ho etsahala'ng ka phihlello tabeng ee?

    HighLoad++, Evgeniy Kuzovlev (EcommPay IT): seo u lokelang ho se etsa ha motsotso oa ho phomola o bitsa $ 100000

    EK: - Potso e makatsang! Taba ea pele, ha re boloke li-PAN meleng. Ha re na tokelo ea ho boloka PAN kae kapa kae ka mokhoa o hlakileng, ha e le hantle, re sebelisa tšebeletso e khethehileng (re e bitsa "Kademon") - ena ke tšebeletso e etsang ntho e le 'ngoe feela: e amohela molaetsa e le ho kenya le ho romela. hlahisa molaetsa o patiloeng. 'Me re boloka tsohle ka molaetsa ona o patiloeng. Ka lebaka leo, bolelele ba rona ba senotlolo bo tlas'a kilobyte, e le hore sena se tebile ebile se ka tšeptjoa.

    NAKO: - Na u hloka 2 kilobytes hona joale?

    EK: - Ho bonahala eka maobane e ne e le 256 ... Hantle, kae hape?!

    Ka hona, ena ke ea pele. Taba ea bobeli, tharollo e teng, e ts'ehetsa ts'ebetso ea ho ngolla hape - ho na le lipara tse peli tsa "keks" (linotlolo), tse fanang ka "li-decks" tse kentsoeng (linotlolo ke linotlolo, dek ke tse nkiloeng ho linotlolo tse encrypt) . 'Me haeba ts'ebetso e qalisoa (e etsahala khafetsa, ho tloha likhoeling tse 3 ho isa ho ± tse ling), re khoasolla "mahobe" a macha,' me re hlakola data hape. Re na le lits'ebeletso tse arohaneng tse haholang data eohle le ho e patala ka tsela e ncha; Lintlha li bolokiloe haufi le sekhetho sa senotlolo seo e kentsoeng ka sona. Ka hona, hang ha re hlakola data ka linotlolo tse ncha, re hlakola senotlolo sa khale.

    Ka linako tse ling litefo li hloka ho etsoa ka letsoho...

    NAKO: - Ke hore, haeba puseletso e fihlile bakeng sa ts'ebetso e itseng, na u ntse u tla e hlakola ka senotlolo sa khale?

    EK: - E.

    NAKO: - Ebe potso e 'ngoe hape e nyane. Ha mofuta o itseng oa ho hloleha, ho oa, kapa ketsahalo e etsahala, hoa hlokahala hore u sutumelle ka letsoho ka letsoho. Ho na le boemo bo joalo.

    EK: - E, ka linako tse ling.

    NAKO: - U fumana data ee hokae? Kapa na u ikela setsing see sa polokelo?

    EK: - Che, ha e le hantle, re na le mofuta o mong oa tsamaiso ea morao-rao e nang le sebopeho sa tšehetso ea rona. Haeba re sa tsebe hore na transaction e boemong bofe (mohlala, ho fihlela tsamaiso ea ho lefa e arabela ka nako ea nako), ha re tsebe priori, ke hore, re abela boemo ba ho qetela feela ka kholiseho e feletseng. Tabeng ena, re abela transaction ho boemo bo khethehileng bakeng sa ho sebetsa ka letsoho. Hoseng, letsatsing le hlahlamang, hang ha tšehetso e fumana boitsebiso ba hore litšebelisano tse joalo le tse joalo li ntse li le tsamaisong ea ho lefa, ba li sebetsana ka letsoho ka har'a sebopeho sena.

    HighLoad++, Evgeniy Kuzovlev (EcommPay IT): seo u lokelang ho se etsa ha motsotso oa ho phomola o bitsa $ 100000

    NAKO: - Ke na le lipotso tse 'maloa. E 'ngoe ea tsona ke tsoelo-pele ea sebaka sa PCI DSS: u ka ngolisa potoloho ea bona joang? Potso ena ke hobane moqapi a ka be a kentse eng kapa eng ka har'a likutu! Potso ea bobeli: u ntša li-hotfixes joang? Ho sebelisa li-handle ho database ke khetho e le 'ngoe, empa ho ka ba le li-hot-fixes tsa mahala - ts'ebetso ke efe moo? 'Me potso ea boraro mohlomong e amana le RTO, RPO. Ho fumaneha ha hau e ne e le 99,97, hoo e ka bang tse robong tse 'nè, empa ha ke ntse ke e utloisisa, u na le setsi sa bobeli sa data, setsi sa boraro sa data, le setsi sa bohlano sa data ... U li lumellana joang, u li pheta-pheta, le tse ling tsohle?

    EK: - Ha re qale ka ea pele. Na potso ea pele e ne e le mabapi le lifate? Ha re ngola li-log, re na le lera le patang data eohle e hlokolosi. O sheba maske le masimo a tlatsetso. Ka hona, lits'oants'o tsa rona li tsoa ka data e seng e koaletsoe le potoloho ea PCI DSS. Ena ke e 'ngoe ea mesebetsi e tloaelehileng e abeloang lefapha la liteko. Ba tlameha ho hlahloba mosebetsi o mong le o mong, ho kenyelletsa le li-logs tseo ba li ngolang, 'me ena ke e' ngoe ea mesebetsi e tloaelehileng nakong ea tlhahlobo ea khoutu, e le ho laola hore moqapi ha aa ngola ho hong. Litlhahlobo tse latelang tsa sena li etsoa khafetsa ke lefapha la ts'ireletso ea tlhahisoleseling hoo e ka bang hanngoe ka beke: lits'oants'o tsa letsatsi la ho qetela li nkuoa ka mokhoa o ikhethileng 'me li tsamaisoa ka mohlahlobi o khethehileng oa li-scanner ho tsoa ho li-server tsa liteko ho lekola tsohle.
    Mabapi le li-hot-fixes. Sena se kenyelelitsoe melaong ea rona ea thomello. Re na le poleloana e arohaneng mabapi le li-hotfixes. Re lumela hore re sebelisa li-hotfixes bosiu le motšehare ha re li hloka. Hang ha phetolelo e ntse e bokelloa, hang ha e tsamaisoa, hang ha re e-na le setsebi sa maiketsetso, re na le mookameli oa tsamaiso ea mosebetsing ka mohala o tsoang ho tšehetso, 'me o e sebelisa ka nako eo ho hlokahalang.

    Hoo e ka bang "four nines". Palo eo re nang le eona hona joale e finyeletsoe e le kannete, 'me re ile ra ikitlaelletsa ho eona setsing se seng sa data. Hona joale re na le setsi sa bobeli sa data, 'me re qala ho tsamaea pakeng tsa bona,' me taba ea ho pheta-pheta ha setsi sa marang-rang ke potso e sa reng letho. Re lekile ho e rarolla ka nako e 'ngoe re sebelisa mekhoa e fapaneng: re ile ra leka ho sebelisa "Tarantula" e tšoanang - ha ea ka ea re thusa, ke tla u bolella hang-hang. Ke kahoo re ileng ra qetella re odara "sens" ka letsoho. Ebile, ts'ebeliso e 'ngoe le e' ngoe tsamaisong ea rona e tsamaisa khokahano e hlokahalang ea "phetoho - e entsoe" lipakeng tsa litsi tsa data ka mokhoa o tšoanang.

    NAKO: - Haeba u fumane ea bobeli, ke hobane'ng ha u sa ka ua fumana ea boraro? Hobane ha ho motho ea nang le boko bo arohaneng hajoale ...

    EK: - Empa ha re na Split Brain. Ka lebaka la hore kopo e 'ngoe le e' ngoe e khannoa ke multimaster, ha ho tsotellehe ho rona hore na kopo e fihlile setsing sefe. Re itokiselitse taba ea hore haeba e 'ngoe ea litsi tsa rona tsa data e hlōleha (re itšetlehile ka sena)' me bohareng ba kopo ea mosebedisi e fetohela setsing sa bobeli sa data, re itokiselitse ho lahleheloa ke mosebedisi enoa, ka sebele; empa tsena e tla ba diyuniti, diyuniti tse felletseng.

    NAKO: - Lumelang. Ke leboha tlaleho. U buile ka debugger ea hau, e tsamaisang liteko tse ling tlhahisong. Empa re bolelle ka litšebelisano tsa liteko! E teba hakae?

    EK: - E tsamaea ka potoloho e felletseng ea karolo eohle. Bakeng sa karolo, ha ho na phapang pakeng tsa transaction ea teko le ea tlhahiso. Empa ho ea ka pono e utloahalang, ena ke morero o arohaneng tsamaisong, oo ho oona ho etsoang liteko feela.

    NAKO: - U e khaola kae? Ke mona Core e rometsoeng...

    EK: Re ka mor'a "Kor" tabeng ena bakeng sa litšebelisano tsa liteko ... Re na le ntho e kang ho tsamaisa: "Kor" e tseba hore na e lokela ho romelloa ho mokhoa ofe oa ho lefa - re e romella ho mokhoa oa ho lefa oa fake, o fanang ka mokhoa o bonolo oa ho lefa. http letšoao mme ke sona feela.

    NAKO: - Ka kopo, mpolelle, na kopo ea hau e ngotsoe ka monolith e le 'ngoe e kholo, kapa na u ile ua e khaola ka litšebeletso tse ling kapa esita le li-microservices?

    EK: - Ha re na monolith, ehlile, re na le ts'ebeliso e shebaneng le ts'ebeletso. Re soasoa hore tšebeletso ea rona e entsoe ka monoliths - ehlile e kholo haholo. Ho thata ho e bitsa microservices, empa tsena ke lits'ebeletso tseo basebetsi ba mechini e abuoang ba sebetsang ka har'a tsona.

    Haeba tšebeletso ea seva e senyehile ...

    NAKO: - Joale ke na le potso e latelang. Le haeba e ne e le monolith, u ntse u re u na le tse ngata tsa li-server tsena hang-hang, kaofela ha tsona li sebetsana le data, 'me potso ke hore: "Ha ho ka ba le tšitiso ea e' ngoe ea li-server kapa kopo, sehokelo sefe kapa sefe sa motho ka mong. , na ba na le mofuta o itseng oa taolo ea phihlello? Ke ofe ho bona ea ka etsang eng? Ke lokela ho ikopanya le mang bakeng sa lintlha life?

    HighLoad++, Evgeniy Kuzovlev (EcommPay IT): seo u lokelang ho se etsa ha motsotso oa ho phomola o bitsa $ 100000

    EK: - E, ka sebele. Litlhoko tsa ts'ireletso li tebile haholo. Taba ea pele, re na le metsamao ea data e bulehileng, 'me likou ke tsona feela tseo re lebelletseng ho tsamaea ha sephethephethe esale pele. Haeba karolo e buisana le database (e re, le Muskul) ka 5-4-3-2, ke 5-4-3-2 feela e tla buleloa ho eona, 'me likou tse ling le litsela tse ling tsa sephethephethe li ke ke tsa fumaneha. Ho phaella moo, o hloka ho utloisisa hore tlhahiso ea rona ho na le li-loops tse fapaneng tsa ts'ireletso tse ka bang 10. 'Me le haeba kopo e ne e sekiselitsoe ka tsela e itseng, ha ho joalo, mohlaseli a ke ke a khona ho fihlella setsi sa tsamaiso ea seva, hobane ena ke sebaka se fapaneng sa ts'ireletso ea marang-rang.

    NAKO: - 'Me moelelong ona, se thahasellisang ho' na ke hore u na le likonteraka tse itseng le litšebeletso - seo ba ka se etsang, ka "liketso" life tseo ba ka kopanang le tsona ... 'Me ka mokhoa o tloaelehileng, litšebeletso tse ling li kōpa tse ling. row, lethathamo la "liketso" ka lehlakoreng le leng. Ha ba bonahale ba retelehela ho ba bang boemong bo tloaelehileng, ’me ba na le likarolo tse ling tsa boikarabelo. Haeba e 'ngoe ea tsona e sekiselitsoe, na e tla khona ho sitisa "liketso" tsa ts'ebeletso eo?..

    EK: - Kea utloisisa. Haeba boemong bo tloaelehileng le puisano e 'ngoe ea seva e ne e lumelloa ho hang, joale e. Ho ea ka konteraka ea SLA, ha re hlokomele hore u lumelloa feela "liketso" tsa pele tsa 3, 'me ha ua lumelloa "liketso" tse 4. Mohlomong sena ha se na thuso ho rona, hobane re se re na le sistimi ea ts'ireletso ea maemo a 4, ha e le hantle, bakeng sa lipotoloho. Re khetha ho itšireletsa ka li-contours, ho e-na le ho ba boemong ba ka hare.

    Kamoo Visa, MasterCard le Sberbank li sebetsang kateng

    NAKO: - Ke batla ho hlakisa ntlha e mabapi le ho fetola mosebelisi ho tloha setsing se seng sa data ho ea ho se seng. Ho ea kamoo ke tsebang, Visa le MasterCard li sebetsa li sebelisa 8583 binary synchronous protocol, 'me ho na le metsoako moo. 'Me ke ne ke batla ho tseba, joale re bolela ho fetola - na ka ho toba "Visa" le "MasterCard" kapa pele ho mekhoa ea ho lefa, pele e sebetsa?

    EK: - Sena ke pele ho metsoako. Metsoako ea rona e fumaneha setsing se le seng sa data.

    NAKO: - Ka mantsoe a mang, na u na le ntlha e le 'ngoe ea khokahano?

    EK: - "Visa" le "MasterCard" - e. Hobane Visa le MasterCard li hloka matsete a tebileng ho meralo ea motheo ho phethela likonteraka tse arohaneng ho fumana motsoako oa bobeli, mohlala. Li bolokiloe ka har'a setsi se le seng sa data, empa haeba, Molimo a hanela, setsi sa rona sa data, moo ho nang le metsoako ea ho hokahanya le Visa le MasterCard, e shoa, joale re tla ba le kamano le Visa le MasterCard e lahlehileng ...

    NAKO: – Li ka bolokoa joang? Kea tseba hore Visa e lumella khokahano e le 'ngoe feela ka molao-motheo!

    EK: – Ba fana ka thepa ka bobona. Leha ho le joalo, re ile ra fumana lisebelisoa tse sa hlokeng letho ka hare.

    NAKO: - Joale sethala se tsoa ho li-Connects Orange tsa bona? ..

    EK: - E.

    NAKO: - Empa ho thoe'ng ka nyeoe ee: haeba setsi sa hau sa data se nyamela, u ka tsoela pele ho se sebelisa joang? Kapa sephethephethe se ema feela?

    EK: - Che. Tabeng ena, re tla fetola sephethephethe ho mocha o mong, oo, ka tlhaho, o tla ba theko e boima ho rona le ho bitsa chelete e ngata ho bareki ba rona. Empa sephethephethe se ke ke sa feta ka khokahanyo ea rona e tobileng ho Visa, MasterCard, empa ka Sberbank e nang le maemo (e fetelletseng haholo).

    Ke kopa tšoarelo ka matla haeba ke khopisitse basebetsi ba Sberbank. Empa ho ea ka lipalo-palo tsa rona, har'a libanka tsa Russia, Sberbank e oela hangata. Ha ho na khoeli e fetang ntle le ntho e oelang Sberbank.

    HighLoad++, Evgeniy Kuzovlev (EcommPay IT): seo u lokelang ho se etsa ha motsotso oa ho phomola o bitsa $ 100000

    Lipapatso tse ling 🙂

    Kea leboha ka ho lula le rona. Na u rata lingoliloeng tsa rona? U batla ho bona litaba tse ling tse khahlisang? Re tšehetse ka ho etsa odara kapa ho khothaletsa metsoalle, cloud VPS bakeng sa batho ba ntlafatsang ho tloha ho $ 4.99, analogue e ikhethang ea li-server tsa boemo ba ho kena, e iqapetsoeng ke rona bakeng sa hau: 'Nete eohle ka VPS (KVM) E5-2697 v3 (6 Cores) 10GB DDR4 480GB SSD 1Gbps ho tloha $19 kapa mokhoa oa ho arolelana seva? (e fumaneha ka RAID1 le RAID10, ho fihla ho li-cores tse 24 le ho fihla ho 40GB DDR4).

    Dell R730xd makhetlo a 2 a theko e tlase sebakeng sa data sa Equinix Tier IV se Amsterdam? Ke mona feela 2 x Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6GHz 14C 64GB DDR4 4x960GB SSD 1Gbps 100 TV ho tloha $199 naheng ea Netherlands! Dell R420 - 2x E5-2430 2.2Ghz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB - ho tloha $99! Bala ka Mokhoa oa ho haha ​​​​infrastructure Corp. sehlopha ka tšebeliso ea li-server tsa Dell R730xd E5-2650 v4 tse jang li-euro tse 9000 bakeng sa penny?

Source: www.habr.com

Eketsa ka tlhaloso