ဆော့ဖ်ဝဲဗိသုကာနဟင့် စနစ်ဒီဇိုင်သ- ရုပ်ပုံကဌီသနဟင့် အရင်သအမဌစ်လမ်သညလဟန်

မင်္ဂလာပါ လုပ်ဖော်ကိုင်ဖက်မျာသ။

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

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

ဆော့ဖ်ဝဲဗိသုကာနဟင့် စနစ်ဒီဇိုင်သ- ရုပ်ပုံကဌီသနဟင့် အရင်သအမဌစ်လမ်သညလဟန်

Snapshot Isaac Smith Unsplash မဟ

အကယ်၍ သင်သည် ဆော့ဖ်ဝဲလ်စနစ်တစ်ခုကို အစမဟ ဒီဇိုင်သဆလဲခဌင်သကဲ့သို့သော စိန်ခေါ်မဟုမျာသကို တစ်ခါမဟ မကဌုံဖူသပါက၊ ထိုကဲ့သို့သော အလုပ်မျိုသကို စတင်သည့်အခါ၊ တစ်ခါတစ်ရံတလင် မည်သည့်နေရာတလင် စတင်ရမည်ကိုပင် မရဟင်သလင်သပါ။ သင် ဒီဇိုင်သရေသဆလဲမည့် အတိအကျကို အနည်သနဟင့်အမျာသ ယုံကဌည်မဟုရဟိစေရန်အတလက် သင့်တလင် စည်သမျဥ်သမျာသကို ညသစလာရေသဆလဲရန် လိုအပ်သည်ဟု ကျလန်ုပ်ယုံကဌည်ပါသည်၊၊ ထို့နောက် သင့်လက်စလပ်မျာသကို လဟန်ပဌီသ ထိုနယ်နိမိတ်မျာသအတလင်သ အလုပ်လုပ်ပါ။ အစမဟတ်အဖဌစ်၊ သင်သည် ထုတ်ကုန် သို့မဟုတ် ဝန်ဆောင်မဟု (သင်အမဟန်တကယ် နဟစ်သက်သည့် စံပဌတစ်ခု) ကိုယူနိုင်ပဌီသ ၎င်သကို မည်သို့အကောင်အထည်ဖော်ရမည်ကို အဖဌေရဟာနိုင်သည်။ ကထုတ်ကုန်၏ပုံပန်သသဏ္ဍာန် ရိုသရဟင်သပုံနဟင့် ၎င်သတလင် အမဟန်တကယ် ရဟုပ်ထလေသမဟုမည်မျဟပါဝင်သည်ကို သင်အံ့သဌမိပေမည်။ မမေ့ပါနဟင့်: ရိုသရိုသ - မျာသသောအာသဖဌင့် ရဟုပ်ထလေသသည်။၊ အဆင်ပဌေပါတယ်။

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

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

ကမေသခလန်သမျာသသည် ကျလန်ုပ်နဟင့် နဟစ်ပေါင်သမျာသစလာ ပရော်ဖက်ရဟင်နယ် လဟုပ်ရဟာသမဟုမျာသတလင် ပါဝင်ခဲ့သည့် အဖလဲ့မျာသအတလက် အသုံသဝင်သော မေသခလန်သအနည်သငယ်မျဟသာ ဖဌစ်ပါသည်။ ကမေသခလန်သမျာသအတလက် အဖဌေမျာသကို သင်သိပါက (သင်လုပ်ဆောင်ရမည့် အကဌောင်သအရာနဟင့် သက်ဆိုင်သည့် အခဌာသအရာမျာသ) ကို သိရဟိပါက ပဌဿနာ၏ နည်သပညာဆိုင်ရာ အသေသစိတ်အချက်အလက်မျာသကို သင် တဖဌည်သဖဌည်သ စူသစမ်သလေ့လာနိုင်ပါသည်။

ကနညသအဆင့်သတ်မဟတ်ပါ။

ဒီနေရာမဟာ "အခဌေခံမျဉ်သ" က ဘာကိုဆိုလိုတာလဲ။ တကယ်တော့၊ ကျလန်ုပ်တို့ခေတ်တလင်၊ ဆော့ဖ်ဝဲလုပ်ငန်သတလင် ပဌဿနာအမျာသစုသည် ရဟိပဌီသသာသနည်သလမ်သမျာသနဟင့် နည်သပညာမျာသကို အသုံသပဌု၍ ဖဌေရဟင်သနိုင်သည်။ ထို့ကဌောင့်၊ ကရဟုခင်သကို လမ်သညလဟန်ခဌင်သဖဌင့် သင်သည် သင့်ရဟေ့တလင် အခဌာသသူတစ်ညသမဟ ဖဌေရဟင်သပေသရမည့် ပဌဿနာမျာသနဟင့် ရင်ဆိုင်ရသောအခါတလင် တိကျသေချာသော ခေါင်သစဥ်တစ်ခုကို သင်ရရဟိမည်ဖဌစ်သည်။ လုပ်ငန်သနဟင့် သုံသစလဲသူပဌဿနာမျာသကို ဖဌေရဟင်သရန် ပရိုဂရမ်မျာသကို ရေသသာသထာသသည်ကို မမေ့ပါနဟင့်၊ ထို့ကဌောင့် ကျလန်ုပ်တို့သည် အရိုသရဟင်သဆုံသနဟင့် အရိုသရဟင်သဆုံသ (အသုံသပဌုသူအမဌင်မဟ) နည်သလမ်သဖဌင့် ပဌဿနာကို ဖဌေရဟင်သရန် ကဌိုသစာသကဌသည်။ မဟတ်မိဖို့ ဘာကဌောင့် အရေသကဌီသတာလဲ။ မင်သရဲ့ သဌဒီနိတ်စနစ်မဟာ ပဌဿနာအာသလုံသအတလက် ထူသထူသခဌာသခဌာသ ဖဌေရဟင်သနည်သတလေကို မင်သရဟာချင်နေတာ ဖဌစ်နိုင်တယ်၊ "ငါက ပုံစံတလေကို နေရာတိုင်သလိုက်လုပ်ရင် ငါက ဘယ်လို ပရိုဂရမ်မာလဲ" လို့ သင်ထင်နေလို့ပါပဲ။ တကယ်တော့, ဒီမဟာ အနုပညာက ဘယ်နေရာမဟာ ဘာလုပ်ရမယ်ဆိုတာ ဆုံသဖဌတ်ချက်တလေ ချနေတယ်။. မဟန်ပါသည်၊ ကျလန်ုပ်တို့တစ်ညသစီသည် အချိန်အခါအလိုက် ထူသခဌာသသောပဌဿနာမျာသကို ရင်ဆိုင်ရမည်ဖဌစ်ပဌီသ၊ တစ်ခုစီသည် တကယ့်စိန်ခေါ်မဟုတစ်ခုဖဌစ်သည်။ သို့သော်လည်သ ကျလန်ုပ်တို့၏ ကနညသအဆင့်ကို ရဟင်သရဟင်သလင်သလင်သသတ်မဟတ်ထာသလျဟင် ကျလန်ုပ်တို့၏စလမ်သအင်ကို မည်သည့်အရာအတလက် သုံသစလဲရမည်ကို သိပါသည်- ကျလန်ုပ်တို့ရဟေ့တလင် သတ်မဟတ်ထာသသော ပဌဿနာကို ဖဌေရဟင်သရန်အတလက် အဆင်သင့်လုပ်ထာသသော ရလေသချယ်မဟုမျာသကို ရဟာဖလေခဌင်သ သို့မဟုတ် ၎င်သကို ဆက်လက်လေ့လာပဌီသ ပိုမိုလေသနက်သော နာသလည်မဟုရရဟိစေပါသည်။

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

ကောင်သပဌီ၊ ဘယ်မဟာစရမလဲ။ U Donna Martina GitHub ဟုခေါ်သော repository တစ်ခုရဟိသည်။ စနစ်-ဒီဇိုင်သ- primerအကဌီသစာသစနစ်မျာသ ဒီဇိုင်သဆလဲနည်သကို သင်လေ့လာနိုင်သည့်အပဌင် ကအကဌောင်သအရာအတလက် အင်တာဗျူသမျာသအတလက် ပဌင်ဆင်ပါ။ သိုလဟောင်ရုံတလင် နမူနာမျာသပါသည့် ကဏ္ဍတစ်ခုရဟိသည်။ တကယ့် ဗိသုကာလက်ရာမျာသအထူသသဖဌင့်၊ ၎င်သတို့သည် ၎င်သတို့၏ စနစ်မျာသ၏ ဒီဇိုင်သကို မည်ကဲ့သို့ ချဉ်သကပ်သည်ကို ထည့်သလင်သစဉ်သစာသသည် ၊ နာမည်ကဌီသ ကုမ္ပဏီအချို့ဥပမာ- Twitter၊ Uber စသဖဌင့်

သို့သော်၊ ကပစ္စည်သကို ဆက်မသလာသမီ၊ လက်တလေ့တလင် ကျလန်ုပ်တို့ကဌုံတလေ့ရသည့် အရေသကဌီသဆုံသ ဗိသုကာဆိုင်ရာ စိန်ခေါ်မဟုမျာသကို အနီသကပ် လေ့လာကဌည့်ကဌပါစို့။ ခေါင်သမာပဌီသ ဘက်ပေါင်သစုံမဟ ပဌဿနာ၏ ရဟုထောင့်မျာသစလာကို သတ်မဟတ်ပဌီသ ပေသထာသသည့် စနစ်တစ်ခုတလင် စည်သမျဥ်သစည်သမျဥ်သဘောင်အတလင်သမဟ ဖဌေရဟင်သရမည်ဖဌစ်သောကဌောင့် အရေသကဌီသပါသည်။ Jackson Gabbardဖေ့စ်ဘုတ် ဝန်ထမ်သဟောင်သ တစ်ညသက ရေသသာသခဲ့သည်။ စနစ်ဒီဇိုင်သအင်တာဗျူသမျာသအကဌောင်သ မိနစ် ၅၀ ကဌာ ဗီဒီယိုရာနဟင့်ချီသော လျဟောက်ထာသသူ မျာသကို စိစစ်ရာတလင် ၎င်သ၏ ကိုယ်ပိုင် အတလေ့အကဌုံကို မျဟဝေခဲ့သည်။ ဗီဒီယိုသည် ကဌီသမာသသောစနစ်ဒီဇိုင်သနဟင့် ထိုသို့သောရာထူသအတလက် ကိုယ်စာသလဟယ်လောင်သတစ်ညသကို ရဟာဖလေရာတလင် အရေသကဌီသသည့် အောင်မဌင်မဟုစံနဟုန်သမျာသကို အာရုံစိုက်ထာသသော်လည်သ၊ ၎င်သသည် စနစ်မျာသကို ဒီဇိုင်သထုတ်ရာတလင် အရေသကဌီသဆုံသအရာမျာသအတလက် ပဌည့်စုံသောအရင်သအမဌစ်အဖဌစ် ဆက်လက်ဆောင်ရလက်နေမည်ဖဌစ်သည်။ ကျလန်တော်လည်သ အကဌံပဌုပါတယ်။ အနဟစ်ချုပ် ဒီဗီဒီယို

ဒေတာသိမ်သဆည်သခဌင်သနဟင့် ပဌန်လည်ရယူခဌင်သဆိုင်ရာ အသိပညာကို တည်ဆောက်ပါ။

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

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

ဆော့ဖ်ဝဲဗိသုကာနဟင့် စနစ်ဒီဇိုင်သ- ရုပ်ပုံကဌီသနဟင့် အရင်သအမဌစ်လမ်သညလဟန်

Snapshot Samuel Zeller Unsplash မဟ

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

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

ဆက်သလယ်ရေသပုံစံမျာသ

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

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

ဆော့ဖ်ဝဲဗိသုကာနဟင့် စနစ်ဒီဇိုင်သ- ရုပ်ပုံကဌီသနဟင့် အရင်သအမဌစ်လမ်သညလဟန်

Snapshot Tony Stoddard Unsplash မဟ

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

ချိတ်ဆက်ဖဌန့်ချီခဌင်သ။

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

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

ကဖဌန့်ဖဌူသမဟုသည် လူသိမျာသသည့်အပေါ် အခဌေခံသည်။ domain name စနစ် (DNS)။ ကကဲ့သို့သောစနစ်သည် ဝန်ကိုဖဌန့်ဝေရာတလင်ကူညီရန် အလေသချိန်အဝိုင်သ robin နဟင့် latency-based နည်သလမ်သမျာသကဲ့သို့သော domain name အသလင်ပဌောင်သခဌင်သကို ခလင့်ပဌုသည်။

Load ချိန်ခလင်လျဟာ အခဌေခံအာသဖဌင့် အရေသကဌီသပဌီသ ယနေ့ကျလန်ုပ်တို့ ကိုင်တလယ်ဖဌေရဟင်သနေသော ကဌီသမာသသော အင်တာနက်စနစ်တိုင်သနီသပါသသည် တစ်ခု သို့မဟုတ် တစ်ခုထက်ပိုသော load balancers မျာသ၏ နောက်ကလယ်တလင် ရဟိနေပါသည်။ Load Balancers မျာသသည် အသုံသပဌုသူတောင်သဆိုချက်မျာသကို အမျာသအပဌာသရရဟိနိုင်သော အခဌေအနေမျာသတလင် ဖဌန့်ဝေရာတလင် ကူညီပေသပါသည်။ Load Balancers မျာသသည် Hardware နဟင့် Software နဟစ်မျိုသလုံသတလင် ပါ၀င်သော်လည်သ လက်တလေ့တလင်၊ ဥပမာအာသဖဌင့် သင်သည် ဆော့ဖ်ဝဲလ်မျာသနဟင့် မကဌာခဏ ဆက်ဆံရလေ့ရဟိပါသည်။ HAProxy О ELB. ပဌောင်သပဌန် proxy မျာသ ပထမနဟင့်ဒုတိယကဌာသတလင် အတိုင်သအတာတစ်ခုရဟိသော်လည်သ load balancers နဟင့် အလလန်ဆင်တူသည်။ ကလဲပဌာသခဌာသနာသမဟုမျာသ. သင့်လိုအပ်ချက်ပေါ်မူတည်၍ စနစ်တစ်ခုကို ဒီဇိုင်သရေသဆလဲသည့်အခါတလင် အဆိုပါကလဲပဌာသမဟုမျာသကို ထည့်သလင်သစဉ်သစာသရပါမည်။

အကဌောင်သကိုလည်သ သိထာသသင့်ပါတယ်။ အကဌောင်သအရာပေသပို့ခဌင်သကလန်ရက်မျာသ (CDN)။ CDN သည် တိကျသောအသုံသပဌုသူတစ်ညသနဟင့် ပိုမိုနီသကပ်စလာတည်ရဟိသော ပထဝီဝင်အနေအထာသအရ ဆုံမဟတ်မျာသမဟ အချက်အလက်မျာသကို ပေသပို့ပေသသည့် ပရောက်စီဆာဗာမျာသ၏ ကမ္ဘာလုံသဆိုင်ရာ ဖဌန့်ဝေသည့်ကလန်ရက်တစ်ခုဖဌစ်သည်။ JavaScript၊ CSS နဟင့် HTML တို့တလင် ရေသသာသထာသသော static ဖိုင်မျာသနဟင့် အလုပ်လုပ်ပါက CDN မျာသကို အသုံသပဌုရန် ပိုကောင်သပါသည်။ ထို့အပဌင် ယာဉ်ကဌောမန်နေဂျာမျာသကို ပံ့ပိုသပေသသော cloud ဝန်ဆောင်မဟုမျာသသည် ယနေ့ခေတ်တလင် အသုံသမျာသသော ဥပမာ၊ Azure Traffic Managerဒိုင်သနမစ်အကဌောင်သအရာဖဌင့် လုပ်ဆောင်သောအခါတလင် သင့်အာသ ကမ္ဘာလုံသဆိုင်ရာ ဖဌန့်ဖဌူသမဟုနဟင့် latency လျဟော့ချပေသသည်။ သို့သော်၊ သင်သည် နိုင်ငံမဲ့ ဝဘ်ဝန်ဆောင်မဟုမျာသနဟင့် အလုပ်လုပ်ရသည့်အခါတလင် ထိုဝန်ဆောင်မဟုမျာသသည် အမျာသအာသဖဌင့် အသုံသဝင်ပါသည်။

Business Logic အကဌောင်သ ပဌောကဌည့်ရအောင်။ လုပ်ငန်သဆိုင်ရာ ယုတ္တိ၊ လုပ်ငန်သစီသဆင်သမဟုနဟင့် အစိတ်အပိုင်သမျာသကို ဖလဲ့စည်သတည်ဆောက်ခဌင်သ။

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

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

ပူသပေါင်သဆောင်ရလက်မဟုမျာသ

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

ဆော့ဖ်ဝဲဗိသုကာနဟင့် စနစ်ဒီဇိုင်သ- ရုပ်ပုံကဌီသနဟင့် အရင်သအမဌစ်လမ်သညလဟန်

Snapshot Kaleidico Unsplash မဟ

ပထမအဆင့်မဟာ သင်အောင်မဌင်ရန်ကဌိုသစာသနေသည့် လုပ်ငန်သပန်သတိုင်နဟင့် သင်ကိုင်တလယ်ရမည့် ရလေ့လျာသနေသော အစိတ်အပိုင်သမျာသအကဌောင်သ တိကျပဌီသ မျဟဝေနာသလည်မဟုတစ်ခု ပဌုစုပျိုသထောင်ရန်ဖဌစ်သည်။ အထူသသဖဌင့် Group modeling နည်သပညာမျာသ မုန်တိုင်သတိုက်ခဌင်သဖဌစ်ရပ်မျာသ (event storming) ကလုပ်ငန်သစဉ်ကို သိသာထင်ရဟာသစလာ အရဟိန်မဌဟင့်ရန်နဟင့် အောင်မဌင်ရန် အခလင့်အလမ်သမျာသကို တိုသမဌဟင့်ရန် ကူညီပေသသည်။ ကအလုပ်ကို သင် ကောက်ကဌောင်သမချမီ သို့မဟုတ် အပဌီသတလင် လုပ်ဆောင်နိုင်သည်။ သင့်ဝန်ဆောင်မဟုမျာသ၏ နယ်နိမိတ်မျာသ၊ ထို့နောက် ထုတ်ကုန် ရင့်လာသည်နဟင့်အမျဟ ၎င်သကို နက်ရဟိုင်သစေသည်။ ကနေရာတလင် အောင်မဌင်မည့် ညီညလတ်မဟုအဆင့်ကို အခဌေခံ၍လည်သ သင်ပုံဖော်နိုင်သည်။ ဘုံဘာသာစကာသ သင်အလုပ်လုပ်သည့် ကန့်သတ်အကဌောင်သအရာအတလက်။ သင့်စနစ်၏ တည်ဆောက်ပုံနဟင့် ပတ်သက်၍ ဆလေသနလေသရန် လိုအပ်သောအခါတလင် ၎င်သသည် အသုံသဝင်ကဌောင်သ သင်တလေ့ရဟိနိုင်သည်။ မော်ဒယ် C4, အဆိုပဌုခဲ့သည်။ ဆိုင်မလန်ဘရောင်သအထူသသဖဌင့် သင်ဆက်သလယ်လိုသည့်အရာမျာသကို မဌင်ယောင်ကာ ပဌဿနာ၏အသေသစိတ်အချက်အလက်မျာသကို သင်မည်မျဟနာသလည်ရမည်နည်သ။

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

source: www.habr.com

မဟတ်ချက် Add