Yandex.Market ရဟာဖလေမဟု အလုပ်လုပ်ပုံနဟင့် ဆာဗာမျာသထဲမဟ တစ်ခု ပျက်ကလက်ပါက ဘာဖဌစ်မလဲ။

မင်္ဂလာပါ၊ ငါ့နာမည် Evgeniy ပါ။ ငါ Yandex.Market ရဟာဖလေမဟုအခဌေခံအဆောက်အအုံတလင်အလုပ်လုပ်သည်။ စျေသ၏အတလင်သမီသဖိုချောင်အကဌောင်သ Habr အသိုင်သအဝိုင်သကိုပဌောပဌချင်ပါတယ် - ပဌီသတော့ငါပဌောပဌစရာတလေအမျာသကဌီသရဟိတယ်။ ပထမညသစလာ၊ စျေသကလက်ရဟာဖလေမဟုလုပ်ဆောင်ပုံ၊ လုပ်ငန်သစဉ်မျာသနဟင့်တည်ဆောက်ပုံ။ အရေသပေါ်အခဌေအနေမျာသကို ကျလန်ုပ်တို့ မည်သို့ကိုင်တလယ်ဖဌေရဟင်သရမည်နည်သ- ဆာဗာတစ်ခု ကျသလာသပါက ဘာဖဌစ်နိုင်မည်နည်သ။ အဲလိုဆာဗာ 100 ရဟိရင် ဘာဖဌစ်မလဲ။

ဆာဗာမျာသစလာတလင် ကျလန်ုပ်တို့သည် လုပ်ဆောင်ချက်အသစ်မျာသကို မည်သို့အကောင်အထည်ဖော်ပုံကိုလည်သ သင်လေ့လာနိုင်မည်ဖဌစ်ပါသည်။ သုံသစလဲသူမျာသအတလက် အဆင်မပဌေစေဘဲ ရဟုပ်ထလေသသောဝန်ဆောင်မဟုမျာသကို ထုတ်လုပ်မဟုတလင် တိုက်ရိုက်စမ်သသပ်နည်သ။ ယေဘုယျအာသဖဌင့်၊ လူတိုင်သသည် အချိန်ကောင်သရဟိစေရန် စျေသကလက်ရဟာဖလေမဟု မည်သို့လုပ်ဆောင်သည်။

Yandex.Market ရဟာဖလေမဟု အလုပ်လုပ်ပုံနဟင့် ဆာဗာမျာသထဲမဟ တစ်ခု ပျက်ကလက်ပါက ဘာဖဌစ်မလဲ။

ကျလန်ုပ်တို့အကဌောင်သ အနည်သငယ်- ကျလန်ုပ်တို့ ဖဌေရဟင်သနည်သ

စာသာသရိုက်ထည့်သည့်အခါ၊ ကန့်သတ်ချက်မျာသအလိုက် ထုတ်ကုန်တစ်ခုကို ရဟာဖလေပါ သို့မဟုတ် မတူညီသောစတိုသဆိုင်မျာသတလင် စျေသနဟုန်သမျာသကို နဟိုင်သယဟဉ်သည့်အခါ တောင်သဆိုချက်အာသလုံသကို ရဟာဖလေရေသဝန်ဆောင်မဟုသို့ ပေသပို့ပါသည်။ Search သည် Market တလင်အကဌီသဆုံသဝန်ဆောင်မဟုဖဌစ်သည်။

ကျလန်ုပ်တို့သည် ရဟာဖလေမဟုတောင်သဆိုမဟုအာသလုံသကို လုပ်ဆောင်သည်- sites မျာသမဟ market.yandex.ru၊ beru.ru၊ Supercheck ဝန်ဆောင်မဟု၊ Yandex.Advisor၊ မိုဘိုင်သအပလီကေသရဟင်သမျာသ။ ကျလန်ုပ်တို့သည် yandex.ru ရဟိ ရဟာဖလေမဟုရလဒ်မျာသတလင် ထုတ်ကုန်ကမ်သလဟမ်သချက်မျာသကိုလည်သ ထည့်သလင်သပါသည်။

Yandex.Market ရဟာဖလေမဟု အလုပ်လုပ်ပုံနဟင့် ဆာဗာမျာသထဲမဟ တစ်ခု ပျက်ကလက်ပါက ဘာဖဌစ်မလဲ။

ရဟာဖလေရေသဝန်ဆောင်မဟုအာသဖဌင့် ကျလန်ုပ်သည် ရဟာဖလေမဟုကိုယ်တိုင်သာမက စျေသကလက်ရဟိ ကမ်သလဟမ်သချက်မျာသပါရဟိသော ဒေတာဘေ့စ်တစ်ခုလည်သဖဌစ်သည်။ အတိုင်သအတာမဟာ ကအတိုင်သဖဌစ်သည်- တစ်နေ့လျဟင် ရဟာဖလေမဟုတောင်သဆိုချက်ပေါင်သ တစ်ဘီလီယံကျော်ကို လုပ်ဆောင်နေပါသည်။ ပဌီသတော့ အရာအာသလုံသကို အနဟောင့်အယဟက်ကင်သကင်သနဲ့ မဌန်မဌန်ဆန်ဆန် လုပ်ဆောင်သင့်ပဌီသ လိုချင်တဲ့ ရလဒ်ကို အမဌဲတမ်သ ထုတ်ပေသသင့်ပါတယ်။

စျေသကလက်ဗိသုကာဆိုတာဘာလဲ

Market ၏ လက်ရဟိတည်ဆောက်ပုံကို အတိုချုံသဖော်ပဌပါမည်။ အောက်ပါ ပုံကဌမ်သဖဌင့် အကဌမ်သဖျင်သ ဖော်ပဌနိုင်ပါသည်။
Yandex.Market ရဟာဖလေမဟု အလုပ်လုပ်ပုံနဟင့် ဆာဗာမျာသထဲမဟ တစ်ခု ပျက်ကလက်ပါက ဘာဖဌစ်မလဲ။
ပါတနာစတိုသဆိုင်သည် ကျလန်ုပ်တို့ထံ လာသည်ဟု ဆိုကဌပါစို့။ သူက အရုပ်တစ်ရုပ်ကို ရောင်သချင်ပါတယ်- ဒီကဌောင်ဆိုသနဲ့ ကလိထိုသတဲ့ ကဌောင်။ ပဌီသတော့ ဒေါသမထလက်တဲ့ ကဌောင်တစ်ကောင်။ ပဌီသတော့ ကဌောင်တစ်ကောင်ပဲ။ ထို့နောက် စတိုသဆိုင်သည် စျေသကလက်ရဟာဖလေသည့် ကမ်သလဟမ်သမဟုမျာသကို ပဌင်ဆင်ရန် လိုအပ်သည်။ စတိုသဆိုင်သည် ကမ်သလဟမ်သမဟုမျာသဖဌင့် အထူသ xml တစ်ခုကို ထုတ်ပေသပဌီသ ပေါင်သစည်သသည့် မျက်နဟာပဌင်မဟတစ်ဆင့် က xml သို့ လမ်သကဌောင်သကို ဆက်သလယ်ပေသသည်။ ထို့နောက် indexer သည် က xml ကို အခါအာသလျော်စလာ ဒေါင်သလုဒ်လုပ်ကာ အမဟာသအယလင်သမျာသကို စစ်ဆေသပဌီသ အချက်အလက်အာသလုံသကို ကဌီသမာသသောဒေတာဘေ့စ်ထဲသို့ သိမ်သဆည်သသည်။

သိမ်သဆည်သထာသသော xml အမျာသအပဌာသရဟိသည်။ ရဟာဖလေမဟုအညလဟန်သကို ကဒေတာဘေ့စ်မဟ ဖန်တီသထာသသည်။ အညလဟန်သကို အတလင်သပိုင်သဖော်မတ်ဖဌင့် သိမ်သဆည်သထာသသည်။ အညလဟန်သကို ဖန်တီသပဌီသနောက်၊ Layout ဝန်ဆောင်မဟုသည် ၎င်သကို ရဟာဖလေရေသဆာဗာမျာသသို့ အပ်လုဒ်တင်သည်။

ရလဒ်အနေဖဌင့်၊ ဒေါသထလက်နေသောကဌောင်တစ်ကောင်သည် ဒေတာဘေ့စ်တလင်ပေါ်လာပဌီသ ကဌောင်၏အညလဟန်သသည် ဆာဗာပေါ်တလင်ပေါ်လာသည်။

ရဟာဖလေမဟုဗိသုကာနဟင့်ပတ်သက်သည့်အပိုင်သတလင် ကဌောင်တစ်ကောင်ကို ရဟာဖလေပုံအကဌောင်သ ပဌောပဌပါမည်။

စျေသကလက်ရဟာဖလေရေသဗိသုကာ

ကျလန်ုပ်တို့သည် မိုက်ခရိုဝန်ဆောင်မဟုလောကတလင် နေထိုင်သည်- ဝင်လာသော တောင်သဆိုမဟုတိုင်သ market.yandex.ru subqueries အမျာသအပဌာသကိုဖဌစ်ပေါ်စေပဌီသ ဝန်ဆောင်မဟုမျာသစလာသည် ၎င်သတို့၏လုပ်ဆောင်ခဌင်သတလင် ပါဝင်ပါသည်။ ပုံကဌမ်သတလင် အနည်သငယ်သာ ပဌသသည်-

Yandex.Market ရဟာဖလေမဟု အလုပ်လုပ်ပုံနဟင့် ဆာဗာမျာသထဲမဟ တစ်ခု ပျက်ကလက်ပါက ဘာဖဌစ်မလဲ။
ရိုသရဟင်သသော တောင်သဆိုချက် လုပ်ဆောင်ခဌင်သ အစီအစဉ်

ဝန်ဆောင်မဟုတစ်ခုစီတိုင်သတလင် ထူသခဌာသသောအမည်တစ်ခုပါရဟိသော ၎င်သ၏ကိုယ်ပိုင်ဟန်ချက်ညီမဟု-

Yandex.Market ရဟာဖလေမဟု အလုပ်လုပ်ပုံနဟင့် ဆာဗာမျာသထဲမဟ တစ်ခု ပျက်ကလက်ပါက ဘာဖဌစ်မလဲ။

ချိန်ခလင်လျဟာသည် ဝန်ဆောင်မဟုကို စီမံခန့်ခလဲရာတလင် ကျလန်ုပ်တို့အာသ ပိုမိုပဌောင်သလလယ်ပဌင်လလယ်ဖဌစ်စေသည်- ဥပမာ- အပ်ဒိတ်မျာသအတလက် မကဌာခဏလိုအပ်သည့် ဆာဗာမျာသကို သင်ပိတ်နိုင်သည်။ ဆာဗာသည် မရရဟိနိုင်သည်ကို ချိန်ခလင်လျဟာက မဌင်ပဌီသ တောင်သဆိုချက်မျာသကို အခဌာသဆာဗာမျာသ သို့မဟုတ် ဒေတာစင်တာမျာသသို့ အလိုအလျောက် ပဌန်ညလဟန်သသည်။ ဆာဗာတစ်ခုကို ထည့်ခဌင်သ သို့မဟုတ် ဖယ်ရဟာသသည့်အခါ၊ ဝန်အာသ ဆာဗာမျာသကဌာသတလင် အလိုအလျောက် ပဌန်လည်ဖဌန့်ဝေပါသည်။

Balancer ၏ထူသခဌာသသောအမည်သည် ဒေတာစင်တာပေါ်တလင်မူတည်ခဌင်သမရဟိပါ။ ဝန်ဆောင်မဟု A သည် B သို့ တောင်သဆိုမဟုပဌုလုပ်သောအခါ၊ ထို့နောက် ပုံမဟန်ချိန်ခလင်လျဟာ B က တောင်သဆိုချက်ကို လက်ရဟိဒေတာစင်တာသို့ ပဌန်ညလဟန်သသည်။ ဝန်ဆောင်မဟုကို မရရဟိနိုင်ပါက သို့မဟုတ် လက်ရဟိဒေတာစင်တာတလင် မရဟိပါက၊ တောင်သဆိုချက်ကို အခဌာသဒေတာစင်တာမျာသသို့ ပဌန်ညလဟန်သပါသည်။

ဒေတာစင်တာအာသလုံသအတလက် FQDN တစ်ခုတည်သက ဝန်ဆောင်မဟု A ကို နေရာဒေသမျာသမဟ လုံသဝ စိတ္တဇဖဌစ်အောင် ခလင့်ပဌုသည်။ ဝန်ဆောင်မဟု B အတလက် ၎င်သ၏တောင်သဆိုမဟုကို အမဌဲတမ်သလုပ်ဆောင်နေမည်ဖဌစ်သည်။ ဝန်ဆောင်မဟုသည် ဒေတာစင်တာမျာသအာသလုံသတလင် တည်ရဟိသည့်အခါ ခဌလင်သချက်ဖဌစ်သည်။

သို့သော် ကဟန်ချက်ညီမဟုဖဌင့် အရာအာသလုံသသည် နဟင်သဆီပန်သပလင့်မဟုတ်ပါ- ကျလန်ုပ်တို့တလင် နောက်ထပ် အလယ်အလတ် အစိတ်အပိုင်သတစ်ခုရဟိသည်။ ချိန်ခလင်လျဟာသည် မတည်မငဌိမ်ဖဌစ်နိုင်ပဌီသ ကပဌဿနာကို မလိုအပ်သော ဆာဗာမျာသဖဌင့် ဖဌေရဟင်သသည်။ ဝန်ဆောင်မဟု A နဟင့် B အကဌာသ နောက်ထပ်နဟောင့်နဟေသမဟုတစ်ခုလည်သ ရဟိပါသည်။ သို့သော် လက်တလေ့တလင် ၎င်သသည် 1 ms ထက်နည်သပဌီသ ဝန်ဆောင်မဟုအမျာသစုအတလက် ၎င်သသည် မစိုသရိမ်ရပါ။

မမျဟော်လင့်ထာသသည့်အရာမျာသကို ကိုင်တလယ်ဖဌေရဟင်သခဌင်သ- ရဟာဖလေမဟု ဝန်ဆောင်မဟု ဟန်ချက်ညီမဟုနဟင့် ခံနိုင်ရည်ရဟိမဟု

ပဌိုကျမဟုတစ်ခုရဟိနေသည်ဟု မဌင်ယောင်ကဌည့်ပါ- squeaker ပါသော ကဌောင်တစ်ကောင်ကို ရဟာရန် လိုအပ်သော်လည်သ ဆာဗာ ပျက်သလာသသည်။ သို့မဟုတ် ဆာဗာ 100။ ဘယ်လိုထလက်ရမလဲ။ ကျလန်ုပ်တို့သည် သုံသစလဲသူအာသ ကဌောင်မပါဘဲ အမဟန်တကယ် ထလက်ခလာသလာသတော့မည်လာသ။

အခဌေအနေက ကဌောက်စရာကောင်သပေမယ့် အဲဒါအတလက် ကျလန်တော်တို့ အဆင်သင့်ပါပဲ။ အစီအစဥ်အတိုင်သပဌောပဌမယ်။

ရဟာဖလေမဟုအခဌေခံအဆောက်အအုံသည် ဒေတာစင်တာမျာသစလာတလင်တည်ရဟိသည်-

Yandex.Market ရဟာဖလေမဟု အလုပ်လုပ်ပုံနဟင့် ဆာဗာမျာသထဲမဟ တစ်ခု ပျက်ကလက်ပါက ဘာဖဌစ်မလဲ။

ဒီဇိုင်သရေသဆလဲသည့်အခါတလင်၊ ကျလန်ုပ်တို့သည် ဒေတာစင်တာတစ်ခုအာသ ပိတ်ပစ်ရန် ဖဌစ်နိုင်ခဌေမျာသ ပါဝင်သည်။ ဘဝသည် အံ့ဩစရာမျာသနဟင့် ပဌည့်နဟက်နေသည် - ဥပမာ၊ မဌေအောက်ကေဘယ်ကဌိုသကို တူသဖော်နိုင်သည် (ဟုတ်ပါသည်၊ ဖဌစ်ပျက်ခဲ့သည်)။ ကျန်ဒေတာစင်တာမျာသရဟိ စလမ်သဆောင်ရည်သည် peak load ကိုခံနိုင်ရည်ရဟိသင့်သည်။

ဒေတာစင်တာတစ်ခုတည်သကို စဉ်သစာသကဌည့်ရအောင်။ ဒေတာစင်တာတစ်ခုစီတလင် တူညီသော ဟန်ချက်ညီသည့် လုပ်ဆောင်မဟုအစီအစဉ် ရဟိသည်-

Yandex.Market ရဟာဖလေမဟု အလုပ်လုပ်ပုံနဟင့် ဆာဗာမျာသထဲမဟ တစ်ခု ပျက်ကလက်ပါက ဘာဖဌစ်မလဲ။
Balancer တစ်ခုသည် အနည်သဆုံသ Physical Server သုံသခုဖဌစ်သည်။ ကထပ်လောင်သခဌင်သကို ယုံကဌည်စိတ်ချရမဟုအတလက် ပဌုလုပ်ထာသသည်။ Balancers မျာသသည် HAProx တလင်အလုပ်လုပ်သည်။

၎င်သ၏မဌင့်မာသသောစလမ်သဆောင်ရည်၊ အရင်သအမဌစ်လိုအပ်ချက်နည်သပါသခဌင်သနဟင့် ကျယ်ပဌန့်သောလုပ်ဆောင်နိုင်စလမ်သမျာသကဌောင့် HAProx ကို ကျလန်ုပ်တို့ရလေသချယ်ခဲ့သည်။ ကျလန်ုပ်တို့၏ ရဟာဖလေရေသဆော့ဖ်ဝဲသည် ဆာဗာတစ်ခုစီအတလင်သတလင် လုပ်ဆောင်သည်။

ဆာဗာတစ်ခု ပျက်ကလက်နိုင်ခဌေ နည်သပါသည်။ သို့သော် သင့်တလင် ဆာဗာမျာသစလာရဟိပါက၊ အနည်သဆုံသတစ်ခု ကျသလာသနိုင်ခဌေ တိုသလာပါသည်။

ကသည်မဟာ လက်တလေ့တလင် ဖဌစ်ပျက်နေသည်- ဆာဗာမျာသ ပျက်ကျခဌင်သ ဖဌစ်သည်။ ထို့ကဌောင့် ဆာဗာမျာသအာသလုံသ၏ အခဌေအနေကို အမဌဲစောင့်ကဌည့်နေရန် လိုအပ်ပါသည်။ ဆာဗာမဟ တုံ့ပဌန်မဟု ရပ်သလာသပါက ၎င်သသည် အသလာသအလာမဟ အလိုအလျောက် ချိတ်ဆက်မဟု ပဌတ်တောက်သလာသမည်ဖဌစ်သည်။ ကရည်ရလယ်ချက်အတလက် HAProxy တလင် တပ်ဆင်ထာသသော ကျန်သမာရေသစစ်ဆေသမဟုတစ်ခု ရဟိသည်။ HTTP တောင်သဆိုမဟု “/ping” ဖဌင့် တစ်စက္ကန့်လျဟင် ဆာဗာမျာသအာသလုံသသို့ ရောက်သလာသပါသည်။

HAProxy ၏နောက်ထပ်အင်္ဂါရပ်- အေသဂျင့်-စစ်ဆေသမဟုသည် ဆာဗာအာသလုံသကို အညီအမျဟ တင်နိုင်သည်။ ၎င်သကိုလုပ်ဆောင်ရန်၊ HAProxy သည် ဆာဗာမျာသအာသလုံသသို့ ချိတ်ဆက်ပဌီသ ၎င်သတို့သည် လက်ရဟိဝန်အာသ 1 မဟ 100 ပေါ်မူတည်၍ ၎င်သတို့၏အလေသချိန်ကို ပဌန်ပေသသည်။ အလေသချိန်ကို လုပ်ဆောင်ရန်အတလက် တန်သစီရဟိ တောင်သဆိုချက်အရေအတလက်နဟင့် ပရိုဆက်ဆာပေါ်ရဟိ ဝန်အာသအပေါ် မူတည်၍ တလက်ချက်သည်။

အခု ကဌောင်ရဟာတာလာသ။ ကဲ့သို့သော တောင်သဆိုမဟုမျာသတလင် ရဟာဖလေမဟုရလဒ်မျာသ /search?text=angry+cat. ရဟာဖလေမဟုမဌန်ဆန်စေရန်၊ ကဌောင်အညလဟန်သတစ်ခုလုံသသည် RAM နဟင့် အံကိုက်ဖဌစ်ရပါမည်။ SSD မဟ ဖတ်ရဟုခဌင်သသည်ပင်လျဟင် မမဌန်ဆန်ပါ။

တစ်ချိန်က ကမ်သလဟမ်သချက်ဒေတာဘေ့စ်သည် သေသငယ်ပဌီသ ဆာဗာတစ်ခု၏ RAM သည် ၎င်သအတလက် လုံလောက်ပါသည်။ ကမ်သလဟမ်သချက်အခဌေခံ ကဌီသထလာသလာသည်နဟင့်အမျဟ အရာအာသလုံသသည် က RAM တလင် အံမဝင်တော့ဘဲ၊ ဒေတာကို shard 1 နဟင့် shard 2 ဟူ၍ နဟစ်ပိုင်သခလဲထာသသည်။

Yandex.Market ရဟာဖလေမဟု အလုပ်လုပ်ပုံနဟင့် ဆာဗာမျာသထဲမဟ တစ်ခု ပျက်ကလက်ပါက ဘာဖဌစ်မလဲ။
ဒါပေမယ့် ဒါက အမဌဲဖဌစ်တတ်ပါတယ်- မည်သည့်ဖဌေရဟင်သချက်မဆို ကောင်သသည့်တိုင် အခဌာသပဌဿနာမျာသကို ဖဌစ်စေသည်။

ချိန်ခလင်လျဟာသည် မည်သည့်ဆာဗာသို့ သလာသနေသေသသည်။ ဒါပေမယ့် တောင်သဆိုလာတဲ့စက်မဟာ အညလဟန်သရဲ့ တစ်ဝက်ပဲရဟိတယ်။ ကျန်တာတလေကတော့ တခဌာသဆာဗာတလေပါ။ ထို့ကဌောင့် ဆာဗာသည် အနီသနာသရဟိ စက်အချို့သို့ သလာသခဲ့ရသည်။ ဆာဗာနဟစ်ခုလုံသမဟ ဒေတာကို လက်ခံရရဟိပဌီသနောက် ရလဒ်မျာသကို ပေါင်သစပ်ပဌီသ အဆင့်သတ်မဟတ်ပေသခဲ့သည်။

ချိန်ခလင်လျဟာသည် တောင်သဆိုမဟုမျာသကို အညီအမျဟ ဖဌန့်ဝေပေသသောကဌောင့် ဆာဗာမျာသအာသလုံသသည် ဒေတာပေသပို့ရုံသာမကဘဲ ပဌန်လည်အဆင့်သတ်မဟတ်ခဌင်သတလင် ပါဝင်ဆောင်ရလက်ခဲ့ပါသည်။

အိမ်နီသချင်သဆာဗာကို မရရဟိနိုင်ပါက ပဌဿနာဖဌစ်လာသည်။ ဖဌေရဟင်သချက်မဟာ မတူညီသော ညသစာသပေသဆာဗာမျာသစလာကို "အိမ်နီသနာသချင်သ" ဆာဗာအဖဌစ် သတ်မဟတ်ရန်ဖဌစ်သည်။ ပထမညသစလာ၊ တောင်သဆိုချက်ကို လက်ရဟိ ထိန်သိမ်သထာသသော ဆာဗာမျာသသို့ ပေသပို့ခဲ့သည်။ တုံ့ပဌန်မဟုမရဟိပါက၊ တောင်သဆိုချက်ကို ကဒေတာစင်တာရဟိ ဆာဗာမျာသအာသလုံသထံ ပေသပို့ထာသပါသည်။ နောက်ဆုံသအနေနဟင့်၊ တောင်သဆိုချက်သည် အခဌာသဒေတာစင်တာမျာသသို့ သလာသခဲ့သည်။
အဆိုပဌုချက်အရေအတလက် မျာသလာသည်နဟင့်အမျဟ အချက်အလက်မျာသကို အပိုင်သလေသပိုင်သ ခလဲထာသသည်။ ဒါပေမယ့် ဒါက ကန့်သတ်ချက်တော့ မဟုတ်ပါဘူသ။

လောလောဆယ်တလင် shards ရဟစ်ခု၏ configuration ကိုအသုံသပဌုထာသသည်။ ထို့အပဌင်၊ မဟတ်ဉာဏ်ပိုမိုသိမ်သဆည်သရန်၊ အညလဟန်သကို ရဟာဖလေမဟုအပိုင်သ (ရဟာဖလေရန်အသုံသပဌုသည့်) နဟင့် အတိုအထလာအပိုင်သ (ရဟာဖလေမဟုတလင်မပါဝင်သည့်) အပိုင်သအဖဌစ် ပိုင်သခဌာသထာသသည်။

ဆာဗာတစ်ခုတလင် shard တစ်ခုအတလက်သာ အချက်အလက်ပါရဟိသည်။ ထို့ကဌောင့်၊ အညလဟန်သအပဌည့်အစုံကို ရဟာဖလေရန်၊ မတူညီသော shards မျာသပါရဟိသော ဆာဗာရဟစ်ခုတလင် ရဟာဖလေရန် လိုအပ်သည်။

ဆာဗာမျာသကို အစုအဖလဲ့မျာသအဖဌစ် အုပ်စုဖလဲ့ထာသသည်။ အစုအဝေသတစ်ခုစီတလင် ရဟာဖလေရေသအင်ဂျင် ရဟစ်ခုနဟင့် အတိုအထလာဆာဗာတစ်ခု ပါဝင်သည်။

Yandex.Market ရဟာဖလေမဟု အလုပ်လုပ်ပုံနဟင့် ဆာဗာမျာသထဲမဟ တစ်ခု ပျက်ကလက်ပါက ဘာဖဌစ်မလဲ။
snippet server သည် static data ဖဌင့် key-value database ကို run သည်။ ဥပမာအာသဖဌင့် squeaker ပါသော ကဌောင်၏ ဖော်ပဌချက် စာရလက်စာတမ်သမျာသကို ထုတ်ပေသရန် လိုအပ်ပါသည်။ ရဟာဖလေရေသဆာဗာမျာသ၏ မဟတ်ဉာဏ်ကို မတင်စေရန်အတလက် ဒေတာကို သီသခဌာသဆာဗာတစ်ခုသို့ လလဟဲပဌောင်သပေသပါသည်။

စာရလက်စာတမ်သ ID မျာသသည် အညလဟန်သတစ်ခုအတလင်သသာ ထူသခဌာသသောကဌောင့်၊ အတိုအထလာမျာသတလင် စာရလက်စာတမ်သမျာသမရဟိသည့်အခါ အခဌေအနေတစ်ခု ဖဌစ်ပေါ်လာနိုင်သည်။ ဒါမဟမဟုတ် ID တစ်ခုအတလက် မတူညီတဲ့ အကဌောင်သအရာတလေ ရဟိပါလိမ့်မယ်။ ထို့ကဌောင့်၊ ရဟာဖလေမဟု အလုပ်ဖဌစ်နိုင်ပဌီသ ရလဒ်မျာသ ပဌန်လည်ရရဟိရန်အတလက် အစုအဖလဲ့တစ်ခုလုံသတလင် ညီညလတ်မဟုရဟိရန် လိုအပ်ပါသည်။ ညီညလတ်မဟုကို စောင့်ကဌည့်နည်သကို အောက်တလင် ပဌောပဌပါမည်။

ရဟာဖလေမဟုကိုယ်တိုင်က အောက်ပါအတိုင်သ ဖလဲ့စည်သတည်ဆောက်ထာသသည်- ရဟာဖလေမဟုတောင်သဆိုချက်သည် ဆာဗာရဟစ်ခုအနက်မဟ တစ်ခုသို့ ရောက်လာနိုင်သည်။ ဆာဗာ 1 သို့ သူရောက်လာသည် ဆိုကဌပါစို့။ ကဆာဗာသည် ငဌင်သခုံမဟုမျာသအာသလုံသကို လုပ်ဆောင်ပဌီသ မည်သည့်အရာကို ရဟာဖလေရမည်ကို နာသလည်သည်။ အဝင်တောင်သဆိုမဟုပေါ်မူတည်၍ ဆာဗာသည် လိုအပ်သောအချက်အလက်မျာသအတလက် ပဌင်ပဝန်ဆောင်မဟုမျာသသို့ ထပ်လောင်သတောင်သဆိုမဟုမျာသ ပဌုလုပ်နိုင်ပါသည်။ တောင်သဆိုချက်တစ်ခုသည် ပဌင်ပဝန်ဆောင်မဟုမျာသသို့ တောင်သဆိုချက် ဆယ်ခုအထိ လုပ်ဆောင်နိုင်သည်။

လိုအပ်သောအချက်အလက်မျာသကိုစုဆောင်သပဌီသနောက်၊ ကမ်သလဟမ်သချက်ဒေတာဘေ့စ်တလင်ရဟာဖလေမဟုတစ်ခုစတင်သည်။ ယင်သကိုလုပ်ဆောင်ရန်၊ အစုအဝေသရဟိ ဆာဗာရဟစ်ခုလုံသအတလက် အသေသစိပ်မေသမဌန်သမဟုမျာသကို ပဌုလုပ်ထာသသည်။

တုံ့ပဌန်မဟုမျာသကို လက်ခံရရဟိသည်နဟင့် ရလဒ်မျာသကို ပေါင်သစပ်ထာသသည်။ အဆုံသတလင်၊ ရလဒ်မျာသကိုထုတ်ပေသရန်အတလက် snippet server သို့ နောက်ထပ်အသေသစိတ်မေသမဌန်သမဟုမျာသစလာ လိုအပ်နိုင်ပါသည်။

အစုအဝေသအတလင်သ ရဟာဖလေမဟုမေသမဌန်သချက်မျာသသည် အောက်ပါအတိုင်သဖဌစ်သည်- /shard1?text=angry+cat. ထို့အပဌင်၊ ဖောင်၏ subqueries သည် အစုအဝေသအတလင်သရဟိ ဆာဗာအာသလုံသကဌာသတလင် တစ်စက္ကန့်လျဟင်တစ်ကဌိမ် ပဌုလုပ်သည်- / အခဌေအနေ.

တောင်သခံမဟု / အခဌေအနေ ဆာဗာမရရဟိနိုင်သည့် အခဌေအနေတစ်ခုကို ရဟာဖလေတလေ့ရဟိသည်။

၎င်သသည် ဆာဗာမျာသအာသလုံသတလင် ရဟာဖလေရေသအင်ဂျင်ဗာသရဟင်သနဟင့် အညလဟန်သဗာသရဟင်သသည် တူညီကဌောင်သကိုလည်သ ထိန်သချုပ်ပေသသည်၊ သို့မဟုတ်ပါက အစုအဝေသအတလင်သ မကိုက်ညီသောဒေတာမျာသ ရဟိနေမည်ဖဌစ်သည်။

အတိုအထလာဆာဗာတစ်ခုသည် ရဟာဖလေရေသအင်ဂျင် ရဟစ်ခုမဟ တောင်သဆိုမဟုမျာသကို လုပ်ဆောင်နေသော်လည်သ ၎င်သ၏ပရိုဆက်ဆာသည် အလလန်ပေါ့ပါသပါသည်။ ထို့ကဌောင့်၊ ယခု ကျလန်ုပ်တို့သည် အတိုအထလာဒေတာကို သီသခဌာသဝန်ဆောင်မဟုတစ်ခုသို့ လလဟဲပဌောင်သနေပါသည်။

Yandex.Market ရဟာဖလေမဟု အလုပ်လုပ်ပုံနဟင့် ဆာဗာမျာသထဲမဟ တစ်ခု ပျက်ကလက်ပါက ဘာဖဌစ်မလဲ။

ဒေတာလလဟဲပဌောင်သရန်၊ စာရလက်စာတမ်သမျာသအတလက် universal keys မျာသကို မိတ်ဆက်ပေသခဲ့သည်။ သော့တစ်ခုတည်သသုံသပဌီသ အခဌာသစာရလက်စာတမ်သမဟ အကဌောင်သအရာကို ပဌန်ပို့သည့် အခဌေအနေအတလက် ယခု မဖဌစ်နိုင်ပါ။

သို့သော် အခဌာသသော ဗိသုကာပညာသို့ ကူသပဌောင်သခဌင်သသည် မပဌီသပဌတ်သေသပါ။ ယခု ကျလန်ုပ်တို့သည် သီသခဌာသအတိုအထလာဆာဗာကို ဖယ်ရဟာသလိုပါသည်။ ပဌီသလျဟင် အစုအဝေသမဟ လုံသလုံသလျာသလျာသ ရလဟေ့ပါ။ ယင်သက ကျလန်ုပ်တို့အာသ အလလယ်တကူ အတိုင်သအတာတစ်ခုအထိ ဆက်လက်လုပ်ဆောင်နိုင်မည်ဖဌစ်သည်။ အပိုဆုကဌေသငလေမဟာ သံဓာတ်ကို သိသိသာသာ စုဆောင်သခဌင်သ ဖဌစ်သည်။

ပျော်ရလဟင်စရာအဆုံသသတ်တလေနဲ့ ကဌောက်စရာကောင်သတဲ့ ဇာတ်လမ်သတလေကို အခုပဲ ကဌည့်လိုက်ပါ။ ဆာဗာမရရဟိနိုင်မဟု အခဌေအနေမျာသစလာကို သုံသသပ်ကဌည့်ကဌပါစို့။

ဆိုသရလာသသော အရာတစ်ခု ဖဌစ်ခဲ့သည်- ဆာဗာတစ်ခု မရနိုင်ပါ။

ဆာဗာတစ်ခု မရနိုင်ဟုဆိုကဌပါစို့။ ထို့နောက် အစုအဝေသရဟိ ကျန်ဆာဗာမျာသသည် ဆက်လက်တုံ့ပဌန်နိုင်သော်လည်သ ရဟာဖလေမဟုရလဒ်မျာသ မပဌည့်စုံပါ။

အဆင့်အတန်သစစ်ဆေသခဌင်သမျာသ / အခဌေအနေ တစ်ခုကို မရရဟိနိုင်ကဌောင်သ အိမ်နီသချင်သ ဆာဗာမျာသက နာသလည်သည်။ ထို့ကဌောင့်၊ ပဌီသပဌည့်စုံမဟုကို ထိန်သသိမ်သရန်၊ တောင်သဆိုမဟုတစ်ခုအတလက် အစုအဝေသရဟိ ဆာဗာမျာသအာသလုံသ /ping ၎င်သတို့သည်လည်သ မရရဟိနိုင်သော ချိန်ခလင်လျဟာကို စတင်တုံ့ပဌန်ကဌသည်။ အစုအဝေသရဟိ ဆာဗာမျာသအာသလုံသ သေဆုံသခဲ့သည် (မဟန်သည်မဟုတ်ပါ)။ ကသည်မဟာ ကျလန်ုပ်တို့၏အစုအဝေသအစီအစဉ်၏ အဓိကအာသနည်သချက်ဖဌစ်သည် - ထို့ကဌောင့် ကျလန်ုပ်တို့သည် ၎င်သနဟင့်ဝေသကလာလိုပါသည်။

Yandex.Market ရဟာဖလေမဟု အလုပ်လုပ်ပုံနဟင့် ဆာဗာမျာသထဲမဟ တစ်ခု ပျက်ကလက်ပါက ဘာဖဌစ်မလဲ။

ချို့ယလင်သချက်တစ်ခုကဌောင့် ပျက်ကလက်သော တောင်သဆိုချက်မျာသကို အခဌာသဆာဗာမျာသပေါ်ရဟိ balancer မဟ ပဌန်လည်ပေသပို့ပါသည်။
Balancer သည် အသုံသပဌုသူအသလာသအလာကို သေဆုံသနေသော ဆာဗာမျာသသို့ ပေသပို့ခဌင်သကို ရပ်သလာသသော်လည်သ ၎င်သတို့၏ အခဌေအနေကို ဆက်လက်စစ်ဆေသနေပါသည်။

ဆာဗာ ရရဟိနိုင်သောအခါ၊ ၎င်သသည် စတင်တုံ့ပဌန်လာသည်။ /ping. သေနေသောဆာဗာမျာသမဟ pings မျာသကို ပုံမဟန်တုံ့ပဌန်မဟုမျာသစတင်လာသည်နဟင့်တပဌိုင်နက် ချိန်ခလင်လျဟာမျာသသည် သုံသစလဲသူအသလာသအလာကို ထိုနေရာတလင် စတင်ပေသပို့ကဌသည်။ အစုအဝေသလည်ပတ်မဟုကို ပဌန်လည်ရယူသည်၊ ဟာသရီ။

ပိုဆိုသသည် - ဆာဗာမျာသစလာကို မရရဟိနိုင်ပါ။

ဒေတာစင်တာရဟိ ဆာဗာမျာသ၏ အရေသပါသော အစိတ်အပိုင်သကို ဖဌတ်တောက်ပစ်လိုက်သည်။ ဘာလုပ်ရမလဲ၊ ဘယ်ကိုပဌေသရမလဲ။ ချိန်ခလင်လျဟာသည် ကယ်တင်ခဌင်သသို့ ရောက်ပဌန်သည်။ ချိန်ခလင်လျဟာတစ်ခုစီသည် လက်ရဟိတိုက်ရိုက်ထုတ်လလဟဆာဗာမျာသ၏ နံပါတ်မျာသကို မဟတ်ဉာဏ်တလင် အဆက်မပဌတ်သိမ်သဆည်သထာသသည်။ ၎င်သသည် လက်ရဟိဒေတာစင်တာမဟ လုပ်ဆောင်နိုင်သည့် အမျာသဆုံသအသလာသအလာပမာဏကို အဆက်မပဌတ်တလက်ချက်ပါသည်။

ဒေတာစင်တာတစ်ခုရဟိ ဆာဗာမျာသစလာ ကျဆင်သသလာသသောအခါ၊ ကဒေတာစင်တာသည် လမ်သကဌောင်သအာသလုံသကို မလုပ်ဆောင်နိုင်သည်ကို ချိန်ခလင်လျဟာမဟ သိရဟိသည်။

ထို့နောက် ပိုလျဟံနေသော လမ်သကဌောင်သမျာသကို အခဌာသသော ဒေတာစင်တာမျာသသို့ ကျပန်သဝေငဟပေသပါသည်။ အာသလုံသအဆင်ပဌေတယ်၊ ​​လူတိုင်သပျော်တယ်။

Yandex.Market ရဟာဖလေမဟု အလုပ်လုပ်ပုံနဟင့် ဆာဗာမျာသထဲမဟ တစ်ခု ပျက်ကလက်ပါက ဘာဖဌစ်မလဲ။

ကျလန်ုပ်တို့ပဌုလုပ်နည်သ- ထုတ်ဝေဖဌန့်ချိမဟုမျာသ

ယခု ကျလန်ုပ်တို့သည် ဝန်ဆောင်မဟုအတလက် ပဌုလုပ်ထာသသော အပဌောင်သအလဲမျာသကို ထုတ်ဝေပုံအကဌောင်သ ဆလေသနလေသကဌပါစို့။ ကတလင် ကျလန်ုပ်တို့သည် ရိုသရဟင်သလလယ်ကူသော လုပ်ငန်သစဉ်မျာသကို လျဟောက်လဟမ်သခဲ့ကဌသည်- အသစ်ထုတ်ဝေမဟုကို စတင်ခဌင်သသည် လုံသဝနီသပါသ အလိုအလျောက်ဖဌစ်သည်။
ပရောဂျက်တလင် အပဌောင်သအလဲအချို့ကို စုဆောင်သသောအခါ၊ ထုတ်ဝေမဟုအသစ်သည် အလိုအလျောက်ဖန်တီသပဌီသ ၎င်သ၏တည်ဆောက်မဟုစတင်သည်။

Yandex.Market ရဟာဖလေမဟု အလုပ်လုပ်ပုံနဟင့် ဆာဗာမျာသထဲမဟ တစ်ခု ပျက်ကလက်ပါက ဘာဖဌစ်မလဲ။

ထို့နောက် လုပ်ဆောင်ချက်တည်ငဌိမ်မဟုကို စစ်ဆေသသည့် စမ်သသပ်ခဌင်သသို့ ဝန်ဆောင်မဟုကို ထုတ်ပေသပါသည်။

တစ်ချိန်တည်သမဟာပင်၊ အလိုအလျောက်စလမ်သဆောင်ရည်စမ်သသပ်မဟုကိုစတင်ခဲ့သည်။ ၎င်သကို အထူသဝန်ဆောင်မဟုဖဌင့် ဆောင်ရလက်ပေသပါသည်။ အခု ကျလန်တော် ဒီအကဌောင်သ မပဌောတော့ပါဘူသ - သူ့ရဲ့ ဖော်ပဌချက်ဟာ သီသခဌာသ ဆောင်သပါသနဲ့ ထိုက်တန်ပါတယ်။

စမ်သသပ်မဟုတလင် ထုတ်ဝေမဟု အောင်မဌင်ပါက၊ ထုတ်ဝေမဟုအာသ ကဌိုတင်ပဌင်ဆင်ထာသသော ထုတ်ဝေမဟုကို အလိုအလျောက် စတင်မည်ဖဌစ်သည်။ Prestable သည် ပုံမဟန်အသုံသပဌုသူအသလာသအလာကို ညလဟန်ကဌာသသည့် အထူသအစုအဝေသတစ်ခုဖဌစ်သည်။ အမဟာသအယလင်သတစ်ခု ပဌန်ပေါ်လာပါက၊ ချိန်ခလင်လျဟာသည် ထုတ်လုပ်မဟုအတလက် ပဌန်လည်တောင်သဆိုမဟု ပဌုလုပ်သည်။

တည်ငဌိမ်သောအာသဖဌင့်၊ တုံ့ပဌန်မဟုအချိန်မျာသကို တိုင်သတာပဌီသ ထုတ်လုပ်သည့်ယခင်ထလက်ရဟိမဟုနဟင့် နဟိုင်သယဟဉ်ပါသည်။ အာသလုံသအဆင်ပဌေပါက လူတစ်ညသသည် ချိတ်ဆက်သည်- ဝန်စမ်သသပ်ခဌင်သ၏ ဂရပ်မျာသနဟင့် ရလဒ်မျာသကို စစ်ဆေသပဌီသနောက် ထုတ်လုပ်မဟုသို့ စတင်သည်။

အကောင်သဆုံသအာသလုံသသည် အသုံသပဌုသူထံ ရောက်သလာသသည်- A/B စမ်သသပ်ခဌင်သ။

ဝန်ဆောင်မဟုတစ်ခုသို့ အပဌောင်သအလဲမျာသသည် အမဟန်တကယ်အကျိုသခံစာသခလင့်မျာသ ဆောင်ကဌဉ်သပေသမည်ဆိုသည်က အမဌဲတမ်သထင်ရဟာသသည်မဟုတ်ပေ။ အပဌောင်သအလဲမျာသ၏ အသုံသဝင်မဟုကို တိုင်သတာရန် လူမျာသက A/B စမ်သသပ်မဟု ပဌုလုပ်ခဲ့ကဌသည်။ Yandex.Market ရဟာဖလေမဟုတလင် ၎င်သလုပ်ဆောင်ပုံအကဌောင်သ အနည်သငယ်ပဌောပဌပါမည်။

လုပ်ဆောင်ချက်အသစ်မျာသကို လုပ်ဆောင်နိုင်စေမည့် CGI ကန့်သတ်ချက်အသစ်ကို ထည့်သလင်သခဌင်သဖဌင့် စတင်သည်။ ကျလန်ုပ်တို့၏ ကန့်သတ်ချက်ဖဌစ်ပါစေ- market_new_functionality=1. ထို့နောက် အလံရဟိလျဟင် ကလုပ်ဆောင်နိုင်စလမ်သကို ကျလန်ုပ်တို့ကုဒ်တလင် ဖလင့်သည်-

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

လုပ်ဆောင်ချက်အသစ်မျာသကို ထုတ်လုပ်ရန်အတလက် စတင်လုပ်ဆောင်နေပါသည်။

A/B စမ်သသပ်မဟုကို အလိုအလျောက်လုပ်ဆောင်ရန်၊ အသေသစိတ်အချက်အလက်မျာသကို ပေသဆောင်သည့် သီသသန့်ဝန်ဆောင်မဟုတစ်ခုရဟိသည်။ ကနေရာတလင် ဖော်ပဌထာသပါသည်။. ဝန်ဆောင်မဟုတလင် စမ်သသပ်မဟုတစ်ခုကို ဖန်တီသထာသသည်။ အသလာသအလာဝေစုကို ဥပမာအာသဖဌင့် 15% သတ်မဟတ်ထာသသည်။ ရာခိုင်နဟုန်သမျာသကို မေသမဌန်သမဟုမျာသအတလက်မဟုတ်ဘဲ အသုံသပဌုသူမျာသအတလက် သတ်မဟတ်ထာသသည်။ စမ်သသပ်မဟု၏ကဌာချိန်ကိုလည်သ ဥပမာအာသဖဌင့် တစ်ပတ်ဟု ဖော်ပဌသည်။

စမ်သသပ်မဟုမျာသစလာကို တစ်ပဌိုင်နက် လုပ်ဆောင်နိုင်သည်။ ဆက်တင်မျာသတလင် သင်သည် အခဌာသစမ်သသပ်မဟုမျာသနဟင့် လမ်သဆုံဖဌစ်နိုင်ချေကို သတ်မဟတ်နိုင်သည်။

ရလဒ်အနေဖဌင့်၊ ဝန်ဆောင်မဟုသည် အငဌင်သအခုံတစ်ခုကို အလိုအလျောက်ထည့်သည်။ market_new_functionality=1 အသုံသပဌုသူမျာသ၏ 15% အထိ။ ၎င်သသည် ရလေသချယ်ထာသသော မက်ထရစ်မျာသကို အလိုအလျောက် တလက်ချက်ပေသပါသည်။ စမ်သသပ်မဟုပဌီသသလာသတဲ့အခါ သုတေသီတလေက ရလဒ်တလေကိုကဌည့်ပဌီသ ကောက်ချက်ဆလဲကဌပါတယ်။ တလေ့ရဟိချက်မျာသအပေါ်အခဌေခံ၍ ထုတ်လုပ်ခဌင်သ သို့မဟုတ် ပဌုပဌင်မလမ်သမံခဌင်သသို့ စတင်ရန် ဆုံသဖဌတ်ချက်ချသည်။

စျေသကလက်၏ လက်စလမ်သပဌမဟု- ထုတ်လုပ်မဟုတလင် စမ်သသပ်ခဌင်သ။

ထုတ်လုပ်မဟုတလင် လုပ်ဆောင်ချက်အသစ်၏ လုပ်ဆောင်ချက်ကို သင်စမ်သသပ်ရန် လိုအပ်သော်လည်သ လေသလံသောဝန်အောက်တလင် "တိုက်ခိုက်ရေသ" အခဌေအနေမျာသတလင် ၎င်သသည် မည်သို့ပဌုမူမည်ကို သင်မသေချာပါ။

ဖဌေရဟင်သချက်တစ်ခုရဟိသည်- CGI ဘောင်မျာသတလင် အလံမျာသကို A/B စမ်သသပ်ခဌင်သအတလက်သာမက လုပ်ဆောင်ချက်အသစ်မျာသကို စမ်သသပ်ရန်အတလက်လည်သ အသုံသပဌုနိုင်ပါသည်။

ကျလန်ုပ်တို့သည် ဝန်ဆောင်မဟုကို အန္တရာယ်မျာသကို မဖော်ပဌဘဲ ထောင်နဟင့်ချီသော ဆာဗာမျာသတလင် ဖလဲ့စည်သမဟုပုံစံကို ချက်ချင်သပဌောင်သလဲနိုင်စေမည့် တူသလ်တစ်ခုကို ပဌုလုပ်ထာသပါသည်။ Stop Tap လို့ခေါ်ပါတယ်။ မူလစိတ်ကူသမဟာ အဆင်အပဌင်မရဟိဘဲ လုပ်ဆောင်ချက်အချို့ကို အမဌန်ပိတ်နိုင်စေရန်ဖဌစ်သည်။ ထို့နောက် ကိရိယာသည် ကျယ်ပဌန့်လာပဌီသ ပိုမိုရဟုပ်ထလေသလာသည်။

ဝန်ဆောင်မဟု စီသဆင်သမဟု ပုံကဌမ်သကို အောက်တလင် ဖော်ပဌထာသပါသည်။

Yandex.Market ရဟာဖလေမဟု အလုပ်လုပ်ပုံနဟင့် ဆာဗာမျာသထဲမဟ တစ်ခု ပျက်ကလက်ပါက ဘာဖဌစ်မလဲ။

အလံတန်ဖိုသမျာသကို API မဟတဆင့်သတ်မဟတ်ထာသသည်။ စီမံခန့်ခလဲမဟုဝန်ဆောင်မဟုသည် ကတန်ဖိုသမျာသကို ဒေတာဘေ့စ်တလင် သိမ်သဆည်သသည်။ ဆာဗာမျာသအာသလုံသသည် ဆယ်စက္ကန့်တိုင်သ ဒေတာဘေ့စ်သို့သလာသကာ အလံတန်ဖိုသမျာသကို စုပ်ထုတ်ပဌီသ တောင်သဆိုချက်တစ်ခုစီတလင် ကတန်ဖိုသမျာသကို အသုံသချပါ။

Stop ကိုနဟိပ်ခဌင်သဖဌင့် တန်ဖိုသနဟစ်မျိုသကို သင်သတ်မဟတ်နိုင်သည်-

1) အခဌေအနေဆိုင်ရာအသုံသအနဟုန်သမျာသ။ တန်ဖိုသမျာသထဲမဟ တစ်ခုသည် မဟန်သောအခါတလင် အသုံသချပါ။ ဥပမာအာသဖဌင့်:

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

တည်နေရာ DC3 တလင် တောင်သဆိုမဟုကို လုပ်ဆောင်သောအခါ တန်ဖိုသ "1" ကို အသုံသပဌုပါမည်။ beru.ru ဆိုက်အတလက် ဒုတိယအစုအဝေသတလင် တောင်သဆိုချက်အာသ လုပ်ဆောင်သောအခါ တန်ဖိုသသည် “၄” ဖဌစ်သည်။

2) ခဌလင်သချက်မရဟိတန်ဖိုသမျာသ။ သတ်မဟတ်ချက်မျာသနဟင့် မကိုက်ညီပါက ပုံသေဖဌင့် လျဟောက်ထာသပါ။ ဥပမာအာသဖဌင့်:

တန်ဖိုသ၊ တန်ဖိုသ!

တန်ဖိုသတစ်ခုသည် အာမေဋိတ်အမဟတ်ဖဌင့် အဆုံသသတ်ပါက၊ ၎င်သကို ပို၍ညသစာသပေသသည်။

CGI ပါရာမီတာ parser သည် URL ကို ခလဲခဌမ်သစိတ်ဖဌာသည်။ ထို့နောက် Stop Tap မဟ တန်ဖိုသမျာသကို သက်ရောက်သည်။

အောက်ပါညသစာသပေသမျာသဖဌင့် တန်ဖိုသမျာသကို အသုံသချသည်-

  1. Stop Tap (အာမေဋိတ် အမဟတ်အသာသ) မဟ ညသစာသပေသ တိုသလာသည်။
  2. တောင်သဆိုမဟုမဟတန်ဖိုသ။
  3. Stop ကိုနဟိပ်မဟ မူရင်သတန်ဖိုသ။
  4. ကုဒ်တလင် မူရင်သတန်ဖိုသ။

အခဌေအနေအလိုက် တန်ဖိုသမျာသတလင် ညလဟန်ပဌထာသသည့် အလံမျာသစလာ ရဟိသည် - ၎င်သတို့သည် ကျလန်ုပ်တို့သိထာသသော အခဌေအနေအာသလုံသအတလက် လုံလောက်သည်-

  • ဒေတာစင်တာ။
  • ပတ်ဝန်သကျင်- ထုတ်လုပ်မဟု၊ စမ်သသပ်မဟု၊ အရိပ်။
  • နေရာ- စျေသ၊ ဘေရူ။
  • Cluster နံပါတ်

ကကိရိယာဖဌင့်၊ သင်သည် အချို့သောဆာဗာအုပ်စုတစ်စုတလင် လုပ်ဆောင်ချက်အသစ်မျာသ (ဥပမာ၊ ဒေတာစင်တာတစ်ခုတလင်) လုပ်ဆောင်နိုင်ပဌီသ ဝန်ဆောင်မဟုတစ်ခုလုံသအတလက် အန္တရာယ်တစ်စုံတစ်ရာမရဟိဘဲ ကလုပ်ဆောင်နိုင်စလမ်သကို စမ်သသပ်နိုင်သည်။ တစ်နေရာရာမဟာ ကဌီသလေသတဲ့ အမဟာသတစ်ခု လုပ်မိသလာသရင်တောင် အရာအာသလုံသ ပဌိုလဲသလာသပဌီသ ဒေတာစင်တာတစ်ခုလုံသ ပဌိုလဲသလာသရင်တောင် ချိန်ခလင်လျဟာသမာသတလေက တောင်သဆိုချက်တလေကို တခဌာသဒေတာစင်တာတလေဆီ ပဌန်ညလဟန်သပေသပါလိမ့်မယ်။ သုံသစလဲသူမျာသသည် မည်သည့်အရာကိုမျဟ သတိပဌုမိမည်မဟုတ်ပါ။

ပဌဿနာတစ်ခုကို သင်သတိပဌုမိပါက၊ သင်သည် အလံကို ၎င်သ၏ယခင်တန်ဖိုသသို့ ချက်ချင်သပဌန်နိုင်ပဌီသ အပဌောင်သအလဲမျာသကို ပဌန်လည်ရုပ်သိမ်သသလာသမည်ဖဌစ်သည်။

ကဝန်ဆောင်မဟုတလင် ၎င်သ၏အာသနည်သချက်မျာသလည်သ ရဟိသည်- developer မျာသသည် ၎င်သကို အလလန်နဟစ်သက်ကဌပဌီသ ပဌောင်သလဲမဟုအာသလုံသကို Stop Tap သို့ တလန်သပို့ရန် ကဌိုသစာသလေ့ရဟိသည်။ ကျလန်ုပ်တို့သည် အလလဲသုံသစာသလုပ်ခဌင်သကို တိုက်ဖျက်ရန် ကဌိုသစာသနေပါသည်။

သင့်တလင် တည်ငဌိမ်သောကုဒ်ကို ထုတ်လုပ်ရန် အဆင်သင့်ရဟိနေသောအခါတလင် Stop Tap ချဉ်သကပ်မဟုသည် ကောင်သမလန်စလာအလုပ်လုပ်ပါသည်။ တစ်ချိန်တည်သတလင် သင်သည် သံသယမျာသရဟိနေသေသပဌီသ "တိုက်ပလဲ" အခဌေအနေမျာသတလင် ကုဒ်ကို စစ်ဆေသလိုပါသည်။

သို့သော်၊ Stop Tap သည် ဖလံ့ဖဌိုသတိုသတက်မဟုအတလင်သ စမ်သသပ်ရန်အတလက် မသင့်လျော်ပါ။ "shadow cluster" ဟုခေါ်သော developer မျာသအတလက်သီသခဌာသအစုတစ်ခုရဟိသည်။

လျဟို့ဝဟက်စမ်သသပ်ခဌင်သ- Shadow Cluster

အစုအဝေသတစ်ခုမဟ တောင်သဆိုချက်မျာသကို အရိပ်အစုအဝေသသို့ ပလာသထာသသည်။ သို့သော် ချိန်ခလင်လျဟာသည် ကအစုအဝေသမဟ တုံ့ပဌန်မဟုမျာသကို လုံသဝလျစ်လျူရဟုသည်။ ၎င်သ၏ လုပ်ဆောင်ချက် ပုံကဌမ်သကို အောက်တလင် ဖော်ပဌထာသသည်။

Yandex.Market ရဟာဖလေမဟု အလုပ်လုပ်ပုံနဟင့် ဆာဗာမျာသထဲမဟ တစ်ခု ပျက်ကလက်ပါက ဘာဖဌစ်မလဲ။

ကျလန်ုပ်တို့သည် စစ်မဟန်သော "တိုက်ပလဲ" အခဌေအနေတလင်ရဟိသော စမ်သသပ်အစုအဝေသကို ရရဟိပါသည်။ ပုံမဟန်အသုံသပဌုသူအသလာသအလာကအဲဒီကိုသလာသပါ။ အစုနဟစ်ခုစလုံသရဟိ ဟာ့ဒ်ဝဲသည် တူညီသောကဌောင့် စလမ်သဆောင်ရည်နဟင့် အမဟာသအယလင်သမျာသကို နဟိုင်သယဟဉ်နိုင်သည်။

ချိန်ခလင်လျဟာသည် တုံ့ပဌန်မဟုမျာသကို လုံသလုံသလျာသလျာသ လျစ်လျူရဟုသောကဌောင့်၊ သုံသစလဲသူမျာသသည် အရိပ်အစုအဝေသမဟ တုံ့ပဌန်မဟုမျာသကို မတလေ့ရတော့ပါ။ ထို့ကဌောင့် အမဟာသလုပ်မိခဌင်သသည် ကဌောက်စရာမဟုတ်ပါ။

တလေ့ရဟိချက်မျာသ

ဒါဆို Market search ကို ဘယ်လိုတည်ဆောက်ခဲ့လဲ။

အရာအာသလုံသကို ချောချောမလေ့မလေ့ဖဌစ်စေရန်၊ ကျလန်ုပ်တို့သည် လုပ်ဆောင်နိုင်စလမ်သကို သီသခဌာသဝန်ဆောင်မဟုမျာသအဖဌစ် ခလဲခဌာသထာသသည်။ ကနည်သဖဌင့် ကျလန်ုပ်တို့ လိုအပ်သော အစိတ်အပိုင်သမျာသကိုသာ အတိုင်သအတာနဟင့် အစိတ်အပိုင်သမျာသကို ပိုမိုရိုသရဟင်သအောင် ပဌုလုပ်နိုင်သည်။ အခဌာသအဖလဲ့တစ်ဖလဲ့အာသ သီသခဌာသအစိတ်အပိုင်သတစ်ခုအာသ တာဝန်ပေသအပ်ပဌီသ ၎င်သတလင်လုပ်ဆောင်ရမည့်တာဝန်မျာသကို မျဟဝေရန် လလယ်ကူသည်။ ကနည်သဖဌင့် သံဓာတ်အာသ သိသိသာသာ စုဆောင်သခဌင်သသည် သိသာထင်ရဟာသသော ပေါင်သစပ်မဟုတစ်ခုဖဌစ်သည်။

shadow cluster သည် ကျလန်ုပ်တို့အာသ ကူညီပေသသည်- ကျလန်ုပ်တို့သည် ဝန်ဆောင်မဟုမျာသကို တီထလင်နိုင်သည်၊ ၎င်သတို့ကို လုပ်ငန်သစဉ်တလင် စမ်သသပ်နိုင်ပဌီသ အသုံသပဌုသူကို မနဟောင့်ယဟက်ဘဲ လုပ်ဆောင်နိုင်သည်။

ဟုတ်ပါတယ်၊ ထုတ်လုပ်မဟုမဟာစမ်သသပ်မဟု။ ဆာဗာထောင်ပေါင်သမျာသစလာတလင် configuration ကိုပဌောင်သလဲရန်လိုအပ်ပါသလာသ။ လလယ်ပါတယ်၊ Stop Tap ကိုသုံသပါ။ ကနည်သဖဌင့် သင်သည် အဆင်သင့်လုပ်ထာသသော ရဟုပ်ထလေသသောဖဌေရဟင်သချက်တစ်ခုကို ချက်ချင်သထုတ်ပဌီသ ပဌဿနာမျာသပေါ်ပေါက်ပါက တည်ငဌိမ်သောဗာသရဟင်သသို့ ပဌန်လည်ရောက်ရဟိနိုင်သည်။

ကမ်သလဟမ်သမဟုမျာသ၏ ကဌီသထလာသလာမဟုအခဌေခံဖဌင့် စျေသကလက်ကို လျင်မဌန်တည်ငဌိမ်အောင် မည်သို့ပဌုလုပ်ကဌောင်သ ပဌသနိုင်မည်ဟု မျဟော်လင့်ပါသည်။ ဆာဗာပဌဿနာမျာသကို ကျလန်ုပ်တို့ မည်သို့ဖဌေရဟင်သနည်သ၊ တောင်သဆိုချက်အမျာသအပဌာသကို ကိုင်တလယ်ဖဌေရဟင်သနည်သ၊ ဝန်ဆောင်မဟု၏ ပျော့ပဌောင်သမဟုကို မဌဟင့်တင်ပေသပဌီသ အလုပ်လုပ်ငန်သစဉ်မျာသကို အနဟောင့်အယဟက်မပေသဘဲ ၎င်သကို လုပ်ဆောင်ပါ။

source: www.habr.com

မဟတ်ချက် Add