Mar a tha rannsachadh Yandex.Market ag obair agus dè thachras ma dh'fhàilligeas aon de na frithealaichean

Halo, is e Evgeniy an t-ainm a th’ orm. Tha mi ag obair ann am bun-structar rannsachaidh Yandex.Market. Tha mi airson innse do choimhearsnachd Habr mu chidsin a-staigh a’ Mhargaidh – agus tha tòrr agam ri innse. An toiseach, mar a tha rannsachadh margaidh ag obair, pròiseasan agus ailtireachd. Ciamar a dhèiligeas sinn ri suidheachaidhean èiginneach: dè thachras ma thèid aon fhrithealaiche sìos? Dè ma tha 100 seirbheisiche mar sin ann?

Ionnsaichidh tu cuideachd mar a chuireas sinn gnìomh ùr an gnìomh air dòrlach de luchd-frithealaidh aig an aon àm. Agus mar a nì sinn deuchainn air seirbheisean iom-fhillte gu dìreach ann an cinneasachadh, gun a bhith ag adhbhrachadh mì-ghoireasachd sam bith do luchd-cleachdaidh. San fharsaingeachd, mar a tha an rannsachadh Margaidh ag obair gus am bi deagh àm aig a h-uile duine.

Mar a tha rannsachadh Yandex.Market ag obair agus dè thachras ma dh'fhàilligeas aon de na frithealaichean

Beagan mu ar deidhinn: dè an duilgheadas a tha sinn a 'fuasgladh

Nuair a chuireas tu a-steach teacsa, lorg toradh a rèir paramadairean, no dèan coimeas eadar prìsean ann an diofar stòran, thèid a h-uile iarrtas a chuir chun t-seirbheis sgrùdaidh. Is e Rannsachadh an t-seirbheis as motha air a’ mhargaidh.

Bidh sinn a’ làimhseachadh a h-uile iarrtas rannsachaidh: bho na làraich market.yandex.ru, beru.ru, seirbheis Supercheck, Yandex.Advisor, tagraidhean gluasadach. Bidh sinn cuideachd a’ toirt a-steach tairgsean toraidh ann an toraidhean rannsachaidh air yandex.ru.

Mar a tha rannsachadh Yandex.Market ag obair agus dè thachras ma dh'fhàilligeas aon de na frithealaichean

Le seirbheis sgrùdaidh tha mi a’ ciallachadh chan e a-mhàin an sgrùdadh fhèin, ach cuideachd stòr-dàta leis a h-uile tairgse air a’ mhargaidh. Is e an sgèile seo: tha còrr air billean iarrtas sgrùdaidh air an giullachd gach latha. Agus bu chòir a h-uile càil obrachadh gu sgiobalta, gun bhriseadh sam bith agus an-còmhnaidh an toradh a tha thu ag iarraidh a thoirt gu buil.

Dè a th 'ann: ailtireachd margaidh

Bheir mi cunntas goirid air ailtireachd gnàthach a’ Mhargaidh. Faodar a mhìneachadh gu garbh leis an diagram gu h-ìosal:
Mar a tha rannsachadh Yandex.Market ag obair agus dè thachras ma dh'fhàilligeas aon de na frithealaichean
Canaidh sinn gu bheil stòr com-pàirtiche a’ tighinn thugainn. Tha e ag ràdh gu bheil mi airson dèideag a reic: an cat olc seo le squeaker. Agus cat feargach eile gun squeaker. Agus dìreach cat. An uairsin feumaidh an stòr tairgsean ullachadh airson am bi am Margaidh a’ lorg. Bidh an stòr a’ gineadh xml sònraichte le tairgsean agus a’ conaltradh na slighe chun xml seo tron ​​​​eadar-aghaidh ceangailte. Bidh an clàr-amais an uairsin a’ luchdachadh sìos an xml seo bho àm gu àm, a’ sgrùdadh mhearachdan agus a’ sàbhaladh a h-uile fiosrachadh gu stòr-dàta mòr.

Tha mòran xmls mar sin air an sàbhaladh. Thèid clàr-amais rannsachaidh a chruthachadh bhon stòr-dàta seo. Tha an clàr-amais air a stòradh ann an cruth a-staigh. Às deidh dhut an clàr-amais a chruthachadh, bidh an t-seirbheis Layout ga luchdachadh suas gu frithealaichean sgrùdaidh.

Mar thoradh air an sin, tha cat feargach le squeaker a’ nochdadh anns an stòr-dàta, agus tha clàr-amais a’ chait a’ nochdadh air an fhrithealaiche.

Innsidh mi dhut mar a bhios sinn a’ lorg cat anns a’ phàirt mu ailtireachd sgrùdaidh.

Ailtireachd rannsachadh margaidh

Tha sinn beò ann an saoghal de mhicro-sheirbheisean: a h-uile iarrtas a thig a-steach margaidh.yandex.ru ag adhbhrachadh mòran fo-iarrtasan, agus tha dusanan de sheirbheisean an sàs anns an giullachd aca. Chan eil an diagram a’ sealltainn ach beagan:

Mar a tha rannsachadh Yandex.Market ag obair agus dè thachras ma dh'fhàilligeas aon de na frithealaichean
Sgeama làimhseachaidh iarrtasan nas sìmplidhe

Tha rud iongantach aig gach seirbheis - an cothromachadh fhèin le ainm sònraichte:

Mar a tha rannsachadh Yandex.Market ag obair agus dè thachras ma dh'fhàilligeas aon de na frithealaichean

Bheir an cothromaiche barrachd sùbailteachd dhuinn ann a bhith a’ stiùireadh na seirbheis: faodaidh tu, mar eisimpleir, frithealaichean a chuir dheth, a tha gu tric a dhìth airson ùrachaidhean. Bidh an cothromaiche a’ faicinn nach eil am frithealaiche ri fhaighinn agus gu fèin-obrachail ag ath-stiùireadh iarrtasan gu frithealaichean no ionadan dàta eile. Nuair a bhios tu a’ cur ris no a’ toirt air falbh frithealaiche, thèid an luchd ath-riarachadh gu fèin-ghluasadach eadar na frithealaichean.

Chan eil ainm sònraichte an neach-cothromachaidh an urra ris an ionad dàta. Nuair a nì seirbheis A iarrtas gu B, bidh cothromaiche B an uairsin ag ath-stiùireadh an iarrtais chun ionad dàta làithreach. Mura h-eil an t-seirbheis ri fhaighinn no mura h-eil e san ionad dàta gnàthach, thèid an t-iarrtas ath-stiùireadh gu ionadan dàta eile.

Tha FQDN singilte airson a h-uile ionad dàta a’ leigeil le seirbheis A tarraing gu tur bho àiteachan. Bidh an t-iarrtas aige gu seirbheis B an-còmhnaidh air a phròiseasadh. Is e an aon rud a tha fìor nuair a tha an t-seirbheis suidhichte anns a h-uile ionad dàta.

Ach chan eil a h-uile dad cho rosach leis a’ chothromaiche seo: tha pàirt eadar-mheadhanach a bharrachd againn. Dh’ fhaodadh gum bi an cothromaiche neo-sheasmhach, agus thèid an duilgheadas seo fhuasgladh le frithealaichean gun fheum. Tha dàil a bharrachd ann cuideachd eadar seirbheisean A agus B. Ach ann an cleachdadh tha e nas lugha na 1 ms agus airson a’ mhòr-chuid de sheirbheisean chan eil seo deatamach.

A’ dèiligeadh ris an fheadhainn ris nach robh dùil: Seirbheis Lorg Cothromachadh agus Seasmhachd

Smaoinich gu bheil tuiteam ann: feumaidh tu cat a lorg le squeaker, ach bidh an frithealaiche a’ tuiteam. No 100 frithealaichean. Ciamar a dhol a-mach? A bheil sinn dha-rìribh a’ dol a dh’ fhàgail an neach-cleachdaidh gun chat?

Tha an suidheachadh eagallach, ach tha sinn deiseil air a shon. Innsidh mi dhut ann an òrdugh.

Tha am bun-structar sgrùdaidh suidhichte ann an grunn ionadan dàta:

Mar a tha rannsachadh Yandex.Market ag obair agus dè thachras ma dh'fhàilligeas aon de na frithealaichean

Nuair a bhios sinn a’ dealbhadh, bidh sinn a’ toirt a-steach comas aon ionad dàta a dhùnadh. Tha beatha làn iongnadh - mar eisimpleir, faodaidh cladhach càball fon talamh a ghearradh (tha, thachair sin). Bu chòir an comas anns na h-ionadan dàta a tha air fhàgail a bhith gu leòr gus seasamh an aghaidh luchdan as àirde.

Beachdaichidh sinn air aon ionad dàta. Tha an aon sgeama obrachaidh cothromachaidh aig gach ionad dàta:

Mar a tha rannsachadh Yandex.Market ag obair agus dè thachras ma dh'fhàilligeas aon de na frithealaichean
Is e aon chothromaiche co-dhiù trì frithealaichean corporra. Tha an call seo air a dhèanamh airson earbsachd. Bidh cothromairean a’ ruith air HAProx.

Thagh sinn HAProx air sgàth a choileanadh àrd, riatanasan stòrais ìosal agus comas-gnìomh farsaing. Bidh am bathar-bog sgrùdaidh againn a’ ruith taobh a-staigh gach frithealaiche.

Tha an coltas gum fàillig aon fhrithealaiche ìosal. Ach ma tha mòran luchd-frithealaidh agad, tha an coltas gun tèid co-dhiù aon dhiubh sìos.

Is e seo a thachras ann an da-rìribh: bidh frithealaichean a’ briseadh. Mar sin, tha e riatanach gu cunbhalach sùil a chumail air inbhe a h-uile frithealaichean. Ma stadas am frithealaiche a’ freagairt, thèid a dhì-cheangal gu fèin-ghluasadach bho thrafaig. Airson an adhbhair seo, tha sgrùdadh slàinte togte aig HAProxy. Bidh e a’ dol chun a h-uile seirbheisiche uair san diog le iarrtas HTTP “/ ping”.

Feart eile de HAProxy: seic àidseant a’ leigeil leat gach frithealaiche a luchdachadh gu cothromach. Gus seo a dhèanamh, bidh HAProxy a 'ceangal ris a h-uile seirbheisiche, agus bidh iad a' tilleadh an cuideam a rèir an luchd làithreach bho 1 gu 100. Tha an cuideam air a thomhas a rèir an àireamh de dh'iarrtasan anns a 'chiudha airson giullachd agus an luchd air a' phròiseasar.

A-nis mu dheidhinn an cat a lorg. Tha toraidhean an rannsachaidh ann an iarrtasan mar: /search?text=feargach+cat. Airson an rannsachadh a bhith luath, feumaidh clàr-amais a’ chait gu lèir a dhol a-steach do RAM. Chan eil eadhon leughadh bhon SSD luath gu leòr.

Uair dhe na h-uairean, bha an stòr-dàta tairgse beag, agus bha RAM aon fhrithealaiche gu leòr air a shon. Mar a dh'fhàs am bunait tairgse, chan eil a h-uile dad a 'freagairt a-steach don RAM seo tuilleadh, agus chaidh an dàta a roinn ann an dà phàirt: shard 1 agus shard 2.

Mar a tha rannsachadh Yandex.Market ag obair agus dè thachras ma dh'fhàilligeas aon de na frithealaichean
Ach tha seo an-còmhnaidh a 'tachairt: tha fuasgladh sam bith, eadhon fear math, ag adhbhrachadh dhuilgheadasan eile.

Chaidh an balancer fhathast gu frithealaiche sam bith. Ach air an inneal far an tàinig an t-iarrtas, cha robh ann ach leth den chlàr-amais. Bha an còrr air frithealaichean eile. Mar sin, dh'fheumadh am frithealaiche a dhol gu inneal nàbaidh. Às deidh dàta fhaighinn bhon dà fhrithealaiche, chaidh na toraidhean a thoirt còmhla agus ath-chlàradh.

Leis gu bheil an cothromaiche a’ sgaoileadh iarrtasan gu cothromach, bha a h-uile seirbheisiche an sàs ann an ath-rangachadh, agus chan ann dìreach a’ cur dàta.

Thachair an duilgheadas mura robh frithealaiche nàbaidh ri fhaighinn. B’ e am fuasgladh grunn luchd-frithealaidh a shònrachadh le prìomhachasan eadar-dhealaichte mar fhrithealaiche “nàbaidh”. An toiseach, chaidh an t-iarrtas a chuir gu na frithealaichean anns a ’chrann gnàthach. Mura robh freagairt ann, chaidh an t-iarrtas a chuir chun a h-uile frithealaiche san ionad dàta seo. Agus mu dheireadh, chaidh an t-iarrtas gu ionadan dàta eile.
Mar a dh'fhàs an àireamh de mholaidhean, chaidh an dàta a roinn ann an ceithir pàirtean. Ach cha b’ e seo a’ chrìoch.

An-dràsta, thathar a 'cleachdadh rèiteachadh de ochd slatan. A bharrachd air an sin, gus eadhon barrachd cuimhne a shàbhaladh, chaidh an clàr-amais a roinn ann am pàirt sgrùdaidh (a thathas a ’cleachdadh airson sgrùdadh) agus pàirt snippet (nach eil an sàs anns an rannsachadh).

Tha fiosrachadh ann an aon fhrithealaiche airson aon shard a-mhàin. Mar sin, gus an clàr-amais slàn a sgrùdadh, feumaidh tu sgrùdadh a dhèanamh air ochd frithealaichean anns a bheil diofar shards.

Tha frithealaichean air an cruinneachadh ann an cruinneachaidhean. Anns gach buidheann tha ochd einnseanan sgrùdaidh agus aon fhrithealaiche criomag.

Mar a tha rannsachadh Yandex.Market ag obair agus dè thachras ma dh'fhàilligeas aon de na frithealaichean
Bidh am frithealaiche snippet a’ ruith stòr-dàta prìomh-luach le dàta statach. Tha feum orra airson sgrìobhainnean a chuir a-mach, mar eisimpleir, tuairisgeul air cat le squeaker. Tha an dàta air a ghluasad gu sònraichte gu frithealaiche air leth gus nach luchdaich cuimhne frithealaichean sgrùdaidh.

Leis gu bheil IDan sgrìobhainnean gun samhail ach taobh a-staigh aon chlàr-amais, dh’ fhaodadh suidheachadh èirigh far nach eil sgrìobhainnean anns na criomagan. Uill, no airson aon ID bidh susbaint eadar-dhealaichte ann. Mar sin, gus an obraich an rannsachadh agus na toraidhean a thilleadh, bha feum air cunbhalachd thairis air a’ bhuidheann gu lèir. Innsidh mi dhut gu h-ìosal mar a bhios sinn a’ cumail sùil air cunbhalachd.

Tha an rannsachadh fhèin air a structaradh mar a leanas: faodaidh iarrtas rannsachaidh tighinn gu gin de na h-ochd frithealaichean. Canaidh sinn gun tàinig e gu frithealaiche 1. Bidh am frithealaiche seo a’ pròiseasadh nan argamaidean gu lèir agus a’ tuigsinn dè agus ciamar a choimheadas tu. A rèir an iarrtais a thig a-steach, faodaidh an frithealaiche iarrtasan a bharrachd a chuir gu seirbheisean taobh a-muigh airson an fhiosrachaidh riatanach. Faodar aon iarrtas a leantainn le suas ri deich iarrtasan gu seirbheisean bhon taobh a-muigh.

Às deidh dhut am fiosrachadh riatanach a chruinneachadh, tòisichidh sgrùdadh anns an stòr-dàta tairgse. Gus seo a dhèanamh, thèid fo-cheistean a dhèanamh dha na h-ochd frithealaichean sa bhuidheann.

Cho luath ‘s a gheibhear na freagairtean, thèid na toraidhean a chur còmhla. Aig a’ cheann thall, is dòcha gum bi feum air grunn fho-cheistean eile don t-seirbheisiche criomag gus na toraidhean a ghineadh.

Tha coltas ann gum bi ceistean rannsachaidh taobh a-staigh a’ bhraisle: /shard1?text=feargach+cat. A bharrachd air an sin, bidh subqueries den fhoirm an-còmhnaidh air an dèanamh eadar a h-uile seirbheisiche taobh a-staigh a’ bhuidheann uair san diog: /inbhe.

Iarrtas /inbhe lorg suidheachadh far nach eil am frithealaiche ri fhaighinn.

Bidh e cuideachd a’ cumail smachd gu bheil an tionndadh einnsean sgrùdaidh agus an dreach clàr-amais mar an ceudna air a h-uile frithealaiche, air neo bidh dàta neo-chunbhalach taobh a-staigh a’ bhuidheann.

A dh 'aindeoin gu bheil aon fhrithealaiche criomag a' làimhseachadh iarrtasan bho ochd innealan rannsachaidh, tha am pròiseasar aige air a luchdachadh gu math aotrom. Mar sin, tha sinn a-nis a’ gluasad an dàta criomag gu seirbheis air leth.

Mar a tha rannsachadh Yandex.Market ag obair agus dè thachras ma dh'fhàilligeas aon de na frithealaichean

Gus dàta a ghluasad, thug sinn a-steach iuchraichean uile-choitcheann airson sgrìobhainnean. A-nis tha e do-dhèanta ann an suidheachadh far a bheil susbaint bho sgrìobhainn eile air a thilleadh le bhith a’ cleachdadh aon iuchair.

Ach chan eil an gluasad gu ailtireachd eile deiseil fhathast. A-nis tha sinn airson faighinn cuidhteas an t-seirbheisiche criomag sònraichte. Agus an uairsin gluais air falbh bhon structar brabhsair gu tur. Leigidh seo leinn cumail oirnn a’ sgèileadh gu furasta. Is e buannachd a bharrachd sàbhalaidhean mòra iarainn.

Agus a-nis gu sgeulachdan eagallach le crìochnachaidhean sona. Beachdaichidh sinn air grunn chùisean far nach eil frithealaiche ri fhaighinn.

Thachair rudeigin uamhasach: chan eil aon fhrithealaiche ri fhaighinn

Canaidh sinn nach eil aon fhrithealaiche ri fhaighinn. An uairsin faodaidh na frithealaichean a tha air fhàgail sa bhuidheann cumail orra a’ freagairt, ach bidh na toraidhean rannsachaidh neo-choileanta.

Tro sgrùdadh inbhe /inbhe tha luchd-frithealaidh nàbaidh a 'tuigsinn nach eil fear ri fhaighinn. Mar sin, gus iomlanachd a chumail suas, bidh a h-uile seirbheisiche sa bhuidheann a rèir iarrtas /ping tòisichidh iad a 'freagairt ris a' chothromaiche nach eil iad rim faighinn cuideachd. Tha e coltach gun do bhàsaich a h-uile seirbheisiche sa bhuidheann (rud nach eil fìor). ’S e seo am prìomh eas-bhuannachd a th’ aig an sgeama cnuasachaidh againn - is ann air sgàth sin a tha sinn airson faighinn air falbh bhuaithe.

Mar a tha rannsachadh Yandex.Market ag obair agus dè thachras ma dh'fhàilligeas aon de na frithealaichean

Bidh iarrtasan a dh’ fhailicheas le mearachd gan gabhail air ais leis an neach-cothromachaidh air frithealaichean eile.
Bidh an cothromaiche cuideachd a’ stad bho bhith a’ cur trafaic luchd-cleachdaidh gu frithealaichean marbh, ach a’ leantainn air adhart a’ sgrùdadh an inbhe.

Nuair a bhios am frithealaiche ri fhaighinn, tòisichidh e a’ freagairt /ping. Cho luath ‘s a thòisicheas freagairtean àbhaisteach do pings bho luchd-frithealaidh marbh a’ ruighinn, tòisichidh luchd-cothromachaidh a ’cur trafaic luchd-cleachdaidh an sin. Tha gnìomhachd brais air ath-nuadhachadh, hurray.

Nas miosa buileach: tha mòran de luchd-frithealaidh nach eil rim faighinn

Tha pàirt chudromach de na frithealaichean san ionad dàta air an gearradh sìos. Dè a nì thu, càite an ruith thu? Thig an cothromaiche gu teasairginn a-rithist. Bidh gach cothromaiche an-còmhnaidh a’ stòradh na h-àireamh de luchd-frithealaidh beò mar chuimhneachan. Bidh e an-còmhnaidh a’ tomhas na h-ìre trafaic as urrainn don ionad dàta gnàthach a phròiseasadh.

Nuair a thèid mòran de luchd-frithealaidh ann an ionad dàta sìos, tuigidh an neach-cothromachaidh nach urrainn don ionad dàta seo an trafaic gu lèir a phròiseasadh.

An uairsin tòisichidh an cus trafaic air a chuairteachadh air thuaiream gu ionadan dàta eile. Bidh a h-uile dad ag obair, tha a h-uile duine toilichte.

Mar a tha rannsachadh Yandex.Market ag obair agus dè thachras ma dh'fhàilligeas aon de na frithealaichean

Mar a nì sinn e: foillseachaidhean foillseachaidh

A-nis bruidhnidh sinn mu mar a dh’ fhoillsicheas sinn atharrachaidhean a chaidh a dhèanamh air an t-seirbheis. An seo tha sinn air an t-slighe gu pròiseasan a dhèanamh nas sìmplidhe: tha sgaoileadh brath ùr cha mhòr gu tur fèin-ghluasadach.
Nuair a thèid àireamh sònraichte de dh’ atharrachaidhean a chruinneachadh sa phròiseact, thèid foillseachadh ùr a chruthachadh gu fèin-ghluasadach agus tòisichidh an togail.

Mar a tha rannsachadh Yandex.Market ag obair agus dè thachras ma dh'fhàilligeas aon de na frithealaichean

An uairsin thèid an t-seirbheis a sgaoileadh gu deuchainn, far a bheil seasmhachd obrachaidh air a sgrùdadh.

Aig an aon àm, thèid deuchainn coileanaidh fèin-ghluasadach a chuir air bhog. Tha seo air a làimhseachadh le seirbheis shònraichte. Cha bhith mi a’ bruidhinn mu dheidhinn a-nis - tha an tuairisgeul aige airidh air artaigil air leth.

Ma tha foillseachadh ann an deuchainn soirbheachail, thèid foillseachadh an fhoillseachadh ann an prestable a thòiseachadh gu fèin-ghluasadach. Tha Prestable na bhuidheann sònraichte far a bheil trafaic luchd-cleachdaidh àbhaisteach air a stiùireadh. Ma thilleas e mearachd, nì an cothromaiche ath-iarrtas gu cinneasachadh.

Ann an prestable, tha amannan freagairt air an tomhas agus air an coimeas ris an fhoillseachadh roimhe ann an cinneasachadh. Ma tha a h-uile dad ceart gu leòr, bidh neach a ’ceangal: a’ sgrùdadh grafaichean agus toraidhean deuchainn luchdan agus an uairsin a ’tòiseachadh air an sgaoileadh gu cinneasachadh.

Tha a h-uile rud as fheàrr a’ dol don neach-cleachdaidh: deuchainn A/B

Chan eil e an-còmhnaidh follaiseach an toir atharrachaidhean air seirbheis buannachdan dha-rìribh. Gus dè cho feumail ‘s a tha atharrachaidhean a thomhas, thàinig daoine suas le deuchainn A/B. Innsidh mi dhut beagan mu mar a tha e ag obair ann an rannsachadh Yandex.Market.

Bidh e uile a’ tòiseachadh le bhith a’ cur paramadair CGI ùr ris a bheir comas do ghnìomhachd ùr. Biodh ar paramadair: market_new_functionality=1. An uairsin anns a’ chòd leigidh sinn an gnìomh seo ma tha a’ bhratach an làthair:

If (cgi.experiments.market_new_functionality) {
// enable new functionality
}

Tha comas-gnìomh ùr ga sgaoileadh a-mach gu cinneasachadh.

Gus deuchainn A/B a dhèanamh fèin-ghluasadach, tha seirbheis shònraichte ann a bheir seachad fiosrachadh mionaideach air a mhìneachadh an seo. Tha deuchainn air a chruthachadh anns an t-seirbheis. Tha an roinn trafaic air a shuidheachadh, mar eisimpleir, 15%. Tha na ceudadan air an suidheachadh chan ann airson ceistean, ach airson luchd-cleachdaidh. Tha fad an deuchainn cuideachd air a chomharrachadh, mar eisimpleir, seachdain.

Faodar grunn dheuchainnean a ruith aig an aon àm. Anns na roghainnean faodaidh tu sònrachadh a bheil e comasach eadar-ghearradh le deuchainnean eile.

Mar thoradh air an sin, cuiridh an t-seirbheis argamaid gu fèin-ghluasadach market_new_functionality=1 gu 15% de luchd-cleachdaidh. Bidh e cuideachd gu fèin-obrachail a’ tomhas na meatrach taghte. Às deidh an deuchainn a chrìochnachadh, bidh luchd-anailis a ’coimhead air na toraidhean agus a’ tighinn gu co-dhùnaidhean. Stèidhichte air na co-dhùnaidhean, thèid co-dhùnadh a sgaoileadh a-mach gu cinneasachadh no ùrachadh.

Làmh dheas a’ mhargaidh: deuchainn ann an cinneasachadh

Bidh e gu tric a ’tachairt gum feum thu deuchainn a dhèanamh air gnìomhachd gnìomh ùr ann an cinneasachadh, ach chan eil thu cinnteach ciamar a bhios e gad ghiùlan fhèin ann an suidheachaidhean“ sabaid ”fo luchd trom.

Tha fuasgladh ann: faodar brataichean ann am paramadairean CGI a chleachdadh chan ann a-mhàin airson deuchainn A / B, ach cuideachd gus comas-gnìomh ùr a dhearbhadh.

Rinn sinn inneal a leigeas leat rèiteachadh atharrachadh sa bhad air mìltean de luchd-frithealaidh gun a bhith a’ nochdadh an t-seirbheis gu cunnartan. Is e Stop Tap a chanar ris. B’ e am beachd tùsail a bhith comasach air cuid de ghnìomhachd a chuir dheth gu sgiobalta às aonais cruth. An uairsin leudaich an inneal agus dh'fhàs e nas iom-fhillte.

Tha an sgeama sruthadh seirbheis air a thaisbeanadh gu h-ìosal:

Mar a tha rannsachadh Yandex.Market ag obair agus dè thachras ma dh'fhàilligeas aon de na frithealaichean

Tha luachan bratach air an suidheachadh tron ​​​​API. Bidh an t-seirbheis riaghlaidh a’ stòradh nan luachan sin san stòr-dàta. Bidh na frithealaichean uile a’ dol chun stòr-dàta aon uair gach deich diog, a’ pumpadh a-mach luachan bratach agus a’ cur na luachan sin an sàs anns gach iarrtas.

Anns an tap Stop faodaidh tu dà sheòrsa luach a shuidheachadh:

1) Abairtean cumhach. Cuir a-steach nuair a tha aon de na luachan fìor. Mar eisimpleir:

{
	"condition":"IS_DC1",
	"value":"3",
}, 
{
	"condition": "CLUSTER==2 and IS_BERU", 
	"value": "4!" 
}

Thèid an luach “3” a chuir an sàs nuair a thèid an t-iarrtas a phròiseasadh ann an àite DC1. Agus is e an luach “4” nuair a thèid an t-iarrtas a phròiseasadh air an dàrna buidheann airson làrach beru.ru.

2) Luachan gun chumhachan. Cuir a-steach gu bunaiteach mura tèid gin de na cumhaichean a choileanadh. Mar eisimpleir:

luach, luach!

Ma thig luach gu crìch le puing clisgeadh, gheibh e prìomhachas nas àirde.

Bidh am parser paramadair CGI a’ parsadh an URL. An uairsin cuir an gnìomh na luachan bhon Stop Tap.

Bithear a’ cur an sàs luachan leis na prìomhachasan a leanas:

  1. Le barrachd prìomhachas bhon Stop Tap (comharra clisgeadh).
  2. Luach bho iarrtas.
  3. An luach bunaiteach bho stad tap.
  4. An luach bunaiteach sa chòd.

Tha mòran bhrataichean ann a tha air an comharrachadh ann an luachan cumhach - tha iad gu leòr airson a h-uile suidheachadh as aithne dhuinn:

  • Ionad dàta.
  • Àrainneachd: cinneasachadh, deuchainn, dubhar.
  • Àite: margaidh, beru.
  • Àireamh brabhsair.

Leis an inneal seo, faodaidh tu comas-gnìomh ùr a chomasachadh air buidheann sònraichte de luchd-frithealaidh (mar eisimpleir, ann an aon ionad dàta) agus deuchainn a dhèanamh air gnìomhachd a’ ghnìomhachd seo gun chunnart sònraichte sam bith don t-seirbheis gu lèir. Eadhon ged a rinn thu fìor mhearachd an àiteigin, thòisich a h-uile càil a’ tuiteam agus chaidh an ionad dàta gu lèir sìos, bidh cothromadairean ag ath-stiùireadh iarrtasan gu ionadan dàta eile. Chan fhaic luchd-cleachdaidh deireannach dad.

Ma mhothaicheas tu duilgheadas, faodaidh tu a’ bhratach a thilleadh chun luach a bh’ ann roimhe agus thèid na h-atharrachaidhean a thoirt air ais.

Tha eas-bhuannachdan aig an t-seirbheis seo cuideachd: tha an luchd-leasachaidh dèidheil air gu mòr agus gu tric bidh iad a’ feuchainn ris na h-atharrachaidhean gu lèir a phutadh a-steach don Stop Tap. Tha sinn a’ feuchainn ri cuir an-aghaidh mì-chleachdadh.

Bidh an dòigh Stop Tap ag obair gu math nuair a tha còd seasmhach agad mu thràth deiseil airson a sgaoileadh a-mach gu cinneasachadh. Aig an aon àm, tha teagamhan agad fhathast, agus tha thu airson sùil a thoirt air a ’chòd ann an suidheachaidhean“ sabaid ”.

Ach, chan eil Stop Tap freagarrach airson deuchainn rè leasachadh. Tha cruinneachadh air leth ann airson luchd-leasachaidh ris an canar an “cnuasach sgàile”.

Deuchainn dìomhair: Shadow Cluster

Tha iarrtasan bho aon de na cruinneachaidhean air an dùblachadh don bhuidheann sgàile. Ach tha an cothromaiche gu tur a’ seachnadh nam freagairtean bhon bhuidheann seo. Tha an diagram den obair aige air a thaisbeanadh gu h-ìosal.

Mar a tha rannsachadh Yandex.Market ag obair agus dè thachras ma dh'fhàilligeas aon de na frithealaichean

Bidh sinn a’ faighinn cruinneachadh deuchainn a tha ann an suidheachaidhean fìor “sabaid”. Bidh trafaic luchd-cleachdaidh àbhaisteach a’ dol ann. Tha am bathar-cruaidh anns an dà chlàr mar an ceudna, agus mar sin faodar coimeas a dhèanamh eadar coileanadh agus mearachdan.

Agus leis gu bheil an cothromaiche gu tur a’ seachnadh fhreagairtean, chan fhaic luchd-cleachdaidh deireannach freagairtean bhon bhuidheann sgàile. Mar sin, chan eil e eagallach mearachd a dhèanamh.

toraidhean

Mar sin, ciamar a thog sinn an rannsachadh Margaidh?

Gus toirt air a h-uile càil a dhol gu rèidh, bidh sinn a’ sgaradh gnìomhachd gu seirbheisean fa leth. San dòigh seo chan urrainn dhuinn ach na pàirtean sin a tha a dhìth oirnn a sgèile agus na pàirtean a dhèanamh nas sìmplidhe. Tha e furasta pàirt fa leth a shònrachadh do sgioba eile agus na dleastanasan airson a bhith ag obair air a cho-roinn. Agus tha sàbhalaidhean mòra ann an iarann ​​​​leis an dòigh-obrach seo na bhuannachd follaiseach.

Bidh an cruinneachadh sgàil cuideachd gar cuideachadh: is urrainn dhuinn seirbheisean a leasachadh, deuchainn a dhèanamh orra sa phròiseas agus gun a bhith a’ cur dragh air an neach-cleachdaidh.

Uill, deuchainn ann an cinneasachadh, gu dearbh. A bheil feum agad air rèiteachadh atharrachadh air mìltean de luchd-frithealaidh? Furasta, cleachd an Stop Tap. San dòigh seo faodaidh tu fuasgladh iom-fhillte deiseil a chuir a-steach sa bhad agus gluasad air ais gu dreach seasmhach ma thig duilgheadasan am bàrr.

Tha mi an dòchas gun robh e comasach dhomh sealltainn mar a nì sinn am Margaidh luath agus seasmhach le bunait de thairgsean a tha a’ sìor fhàs. Mar a dh’ fhuasglas sinn duilgheadasan frithealaiche, a’ dèiligeadh ri àireamh mhòr de dh’iarrtasan, a’ leasachadh sùbailteachd na seirbheis agus a’ dèanamh seo gun a bhith a’ cur bacadh air pròiseasan obrach.

Source: www.habr.com

Cuir beachd ann