Giunsa ang pag-agwanta sa dugang nga mga karga sa sistema: naghisgot kami bahin sa dagkong mga pagpangandam alang sa Black Friday

Hoy Habr!

Sa 2017, atol sa Black Friday, ang load misaka sa hapit usa ug tunga ka beses, ug ang among mga server anaa sa ilang limitasyon. Sulod sa tuig, ang gidaghanon sa mga kliyente miuswag pag-ayo, ug kini nahimong tin-aw nga kung walay maampingong preliminary nga pagpangandam, ang plataporma mahimo nga dili makasugakod sa mga karga sa 2018.

Gitakda namo ang labing ambisyoso nga tumong nga posible: gusto namo nga bug-os nga andam alang sa bisan unsa, bisan sa labing gamhanan, pagdagsang sa kalihokan ug nagsugod sa paglansad og bag-ong mga kapasidad sa tibuok tuig.

Ang among CTO nga si Andrey Chizh (chizh_andrey) nagsulti kung giunsa namo pag-andam ang Black Friday 2018, unsa nga mga lakang ang among gihimo aron malikayan ang pagkahulog, ug, siyempre, ang mga resulta sa ingon nga mabinantayon nga pagpangandam.

Giunsa ang pag-agwanta sa dugang nga mga karga sa sistema: naghisgot kami bahin sa dagkong mga pagpangandam alang sa Black Friday

Karon gusto nakong hisgutan ang mahitungod sa mga pagpangandam alang sa Black Friday 2018. Ngano karon, kung ang kadaghanan sa mga dagkong halin anaa sa luyo namo? Nagsugod kami sa pag-andam mga usa ka tuig sa wala pa ang dagkong mga panghitabo, ug pinaagi sa pagsulay ug sayup nakit-an namon ang labing maayo nga solusyon. Among girekomendar nga ampingan nimo daan ang init nga mga panahon ug likayan ang mga scam nga mahimong motungha sa labing dili angay nga higayon.
Ang materyal mahimong mapuslanon sa tanan nga gusto nga pug-on ang labing taas nga ganansya gikan sa ingon nga mga stock, tungod kay Ang teknikal nga bahin sa isyu dili ubos sa bahin sa marketing dinhi.

Mga bahin sa trapiko sa dagkong halin

Sukwahi sa popular nga pagtuo, ang Black Friday dili lang usa ka adlaw sa usa ka tuig, apan hapit usa ka semana: ang una nga mga tanyag nga diskwento moabut 7-8 ka adlaw sa wala pa ang pagbaligya. Ang trapiko sa website nagsugod sa pag-uswag nga hapsay sa tibuok semana, nakaabot sa kinatumyan niini sa Biyernes ug kusog nga mikunhod sa Sabado ngadto sa regular nga lebel sa tindahan.

Giunsa ang pag-agwanta sa dugang nga mga karga sa sistema: naghisgot kami bahin sa dagkong mga pagpangandam alang sa Black Friday

Importante kini nga tagdon: ang mga online store nahimong labi ka sensitibo sa bisan unsang "paghinay" sa sistema. Dugang pa, ang among email nga linya sa newsletter nakasinati usab usa ka hinungdanon nga pagtaas sa gidaghanon sa mga gisumite.

Estratehikong hinungdanon alang kanato nga makaagi sa Black Friday nga wala’y pag-crash, tungod kay... Ang labing hinungdanon nga gamit sa mga website ug mga newsletter sa tindahan nagdepende sa operasyon sa plataporma, nga mao:

  • Pagsubay ug pag-isyu sa mga rekomendasyon sa produkto,
  • Pag-isyu sa mga may kalabutan nga materyal (pananglitan, mga imahe sa disenyo sa mga bloke sa rekomendasyon, sama sa mga pana, logo, icon ug uban pang mga visual nga elemento),
  • Paghatag og mga hulagway sa produkto sa gikinahanglan nga gidak-on (alang niini nga mga katuyoan kita adunay "ImageResizer" - usa ka subsystem nga nag-download sa usa ka imahe gikan sa server sa tindahan, nag-compress niini ngadto sa gikinahanglan nga gidak-on ug, pinaagi sa mga cache server, naghimo og mga hulagway sa gikinahanglan nga gidak-on alang sa matag produkto sa matag bloke sa rekomendasyon).

Sa tinuud, sa panahon sa Black Friday 2019, ang pagkarga sa serbisyo misaka sa 40%, i.e. ang gidaghanon sa mga panghitabo nga gisubay ug giproseso sa sistema sa Retail Rocket sa mga site sa online store misaka gikan sa 5 ngadto sa 8 ka libo nga mga hangyo matag segundo. Tungod sa kamatuoran nga nangandam kami alang sa mas grabe nga mga karga, dali kaming nakalahutay sa ingon nga pagdagsang.

Giunsa ang pag-agwanta sa dugang nga mga karga sa sistema: naghisgot kami bahin sa dagkong mga pagpangandam alang sa Black Friday

Kinatibuk-ang pagbansay

Ang Black Friday usa ka busy nga oras alang sa tanan nga retail ug e-commerce sa partikular. Ang gidaghanon sa mga tiggamit ug ang ilang kalihokan niining panahona nagkadako pag-ayo, mao nga kami, sama sa kanunay, hingpit nga nangandam alang niining busy nga panahon. Atong idugang dinhi ang kamatuoran nga kita adunay daghang online nga mga tindahan nga konektado dili lamang sa Russia, apan usab sa Europe, diin ang kahinam mao ang mas taas, ug kita sa usa ka lebel sa gugma mas grabe pa kay sa Brazilian serye. Unsa ang kinahanglan buhaton aron hingpit nga maandam alang sa dugang nga mga karga?

Nagtrabaho uban sa mga server

Una, kinahanglan nga mahibal-an kung unsa gyud ang kinahanglan namon aron madugangan ang gahum sa server. Niadtong Agosto, nagsugod kami sa pag-order sa bag-ong mga server ilabi na sa Black Friday - sa kinatibuk-an midugang kami og 10 ka dugang nga mga makina. Pagka-Nobyembre sila hingpit nga nakig-away.

Sa parehas nga oras, ang pipila sa mga makina sa pagtukod gi-install pag-usab aron magamit ingon mga server sa Application. Giandam dayon namo sila sa paggamit sa lain-laing mga gimbuhaton: alang sa pag-isyu sa mga rekomendasyon ug alang sa serbisyo sa ImageResizer, aron, depende sa matang sa load, ang matag usa niini magamit alang sa usa niini nga mga tahas. Sa normal nga mode, ang Application ug ImageResizer server adunay tin-aw nga gihubit nga mga gimbuhaton: ang mga rekomendasyon sa isyu kaniadto, ang ulahi naghatag mga imahe alang sa mga sulat ug mga bloke sa rekomendasyon sa mga website sa pagpamalit sa online. Sa pag-andam sa Black Friday, nakahukom nga himoon ang tanang dual-purpose server aron mabalanse ang trapiko tali kanila depende sa matang sa pag-download.

Dayon gidugang namo ang duha ka dagkong mga server alang sa Kafka (Apache Kafka) ug nakuha ang usa ka cluster sa 5 ka gamhanan nga mga makina. Ikasubo, ang tanan wala molihok nga hapsay sama sa among gusto: sa panahon sa proseso sa pag-synchronize sa datos, duha ka bag-ong makina ang nag-okupar sa tibuuk nga gilapdon sa channel sa network, ug kinahanglan namon nga mahibal-an dayon kung giunsa ang proseso sa pagdugang dali ug luwas alang sa tibuok imprastraktura. Aron masulbad kini nga isyu, ang among mga administrador kinahanglang maisugon nga mosakripisyo sa ilang mga hinapos sa semana.

Pagtrabaho uban sa datos

Dugang sa mga server, nakahukom kami nga i-optimize ang mga file aron mapagaan ang karga ug usa ka dako nga lakang alang kanamo mao ang paghubad sa mga static nga mga file. Ang tanan nga static nga mga file nga kaniadto gi-host sa mga server gibalhin sa S3 + Cloudfront. Gusto namon nga buhaton kini sa dugay nga panahon, tungod kay ang pagkarga sa server hapit sa mga kantidad sa limitasyon, ug karon usa ka dako nga oportunidad ang mitungha.

Usa ka semana sa wala pa ang Black Friday, gidugangan namon ang oras sa pag-cache sa imahe sa 3 ka adlaw, aron kung nahagsa ang ImageResizer, ang mga imahe nga na-cache kaniadto makuha gikan sa cdn. Gipaminusan usab niini ang pagkarga sa among mga server, tungod kay kung mas dugay nga gitipigan ang imahe, labi ka gamay nga kinahanglan namon nga mogasto sa mga kapanguhaan sa pagbag-o sa laki.

Ug ang katapusan apan dili labing gamay: 5 ka adlaw sa wala pa ang Black Friday, usa ka moratorium ang gipahibalo sa pag-deploy sa bisan unsang bag-ong pagpaandar, ingon man sa bisan unsang trabaho sa imprastraktura - ang tanan nga atensyon gitumong sa pagsagubang sa dugang nga mga karga.

Mga plano alang sa pagtubag sa lisud nga mga sitwasyon

Bisan unsa pa ka taas ang kalidad sa pagpangandam, ang mga fakaps kanunay nga posible. Ug nakahimo kami og 3 nga mga plano sa pagtubag alang sa posible nga mga kritikal nga sitwasyon:

  • pagkunhod sa load,
  • pag-disable sa pipila ka mga serbisyo,
  • hingpit nga pagsira sa serbisyo.

Plano A: Bawasan ang load. Kinahanglan nga gi-aktibo kung, tungod sa pagdagsang sa load, ang among mga server milapas sa madawat nga mga timing sa pagtubag. Niini nga kaso, nag-andam kami og mga mekanismo alang sa hinay-hinay nga pagkunhod sa load pinaagi sa pagbalhin sa bahin sa trapiko ngadto sa mga server sa Amazon, nga yanong motubag sa tanang mga hangyo sa "200 OK" ug mohatag og walay sulod nga tubag. Among nasabtan nga kini usa ka pagkadaot sa kalidad sa serbisyo, apan ang pagpili tali sa kamatuoran nga ang serbisyo wala gayud molihok o wala magpakita og mga rekomendasyon alang sa gibana-bana nga 10% sa trapiko klaro.

Plano B: I-disable ang mga serbisyo. Gipasabot nga partial degradation sa serbisyo. Pananglitan, ang pagkunhod sa katulin sa pagkalkula sa personal nga mga rekomendasyon aron madiskarga ang pipila nga mga database ug mga channel sa komunikasyon. Sa normal nga mode, ang mga rekomendasyon gikalkulo sa tinuod nga panahon, nga naghimo sa usa ka lainlaing bersyon sa online store alang sa matag bisita, apan ubos sa mga kondisyon sa dugang nga load, ang pagkunhod sa gikusgon nagtugot sa ubang mga core nga serbisyo nga magpadayon sa pagtrabaho.

Plano C: sa kaso sa Armagedon. Kung mahitabo ang usa ka hingpit nga pagkapakyas sa sistema, nag-andam kami usa ka plano nga magtugot kanamo nga luwas nga madiskonekta gikan sa among mga kostumer. Ang mga pumapalit sa tindahan mohunong ra sa pagtan-aw sa mga rekomendasyon; ang pasundayag sa online nga tindahan dili mag-antos sa bisan unsang paagi. Aron mahimo kini, kinahanglan namong i-reset ang among integration file aron ang mga bag-ong tiggamit mohunong sa pagpakig-uban sa serbisyo. Sa ato pa, dili namo paganahon ang among nag-unang tracking code, ang serbisyo mohunong sa pagkolekta sa datos ug pagkalkula sa mga rekomendasyon, ug ang user makakita lang sa usa ka panid nga walay mga block sa rekomendasyon. Alang sa tanan nga nakadawat kaniadto usa ka file sa panagsama, naghatag kami kapilian nga ibalhin ang rekord sa DNS sa Amazon ug ang 200 OK stub.

Mga resulta

Among gidumala ang tibuok nga karga bisan wala magkinahanglan og dugang nga mga makina sa pagtukod. Ug salamat sa abanteng pagpangandam, wala namo kinahanglana ang bisan unsa sa naugmad nga mga plano sa pagtubag. Apan ang tanan nga trabaho nga nahimo usa ka bililhon nga kasinatian nga makatabang kanamo sa pagsagubang sa labing wala damha ug dako nga pagdagsang sa trapiko.
Sama sa 2017, ang pagkarga sa serbisyo misaka sa 40%, ug ang gidaghanon sa mga tiggamit sa mga online nga tindahan misaka sa 60% sa Black Friday. Ang tanan nga mga kalisud ug mga kasaypanan nahitabo sa panahon sa pagpangandam, nga nagluwas kanamo ug sa among mga kliyente gikan sa wala damhang mga sitwasyon.

Giunsa nimo pagsagubang ang Black Friday? Giunsa nimo pag-andam alang sa kritikal nga mga karga?

Source: www.habr.com

Idugang sa usa ka comment