QCon ညီလာခံ။ ပရမ်သပတာကျလမ်သကျင်ခဌင်သ- Microservices အတလက် Netflix လမ်သညလဟန်။ အပိုင်သ ၄

Josh Evans သည် အခဌေခံအချက်မျာသ - အသေသစာသဝန်ဆောင်မဟုမျာသ၏ ခန္ဓာဗေဒ၊ ဖဌန့်ဝေမဟုစနစ်မျာသနဟင့် သက်ဆိုင်သည့် စိန်ခေါ်မဟုမျာသနဟင့် ၎င်သတို့၏ အကျိုသကျေသဇူသမျာသကို စတင်ခဌင်သဖဌင့် Netflix microservices ၏ ဖရိုဖရဲနဟင့် အရောင်အသလေသစုံလင်သော ကမ္ဘာအကဌောင်သ ဆလေသနလေသသည်။ ကအခဌေခံအုတ်မဌစ်ကို တည်ဆောက်ခဌင်သဖဌင့် အသေသစာသဝန်ဆောင်မဟုကို ကျလမ်သကျင်ပိုင်နိုင်စလာ ညသဆောင်နိုင်စေမည့် ယဉ်ကျေသမဟု၊ ဗိသုကာနဟင့် လုပ်ငန်သလည်ပတ်မဟုဆိုင်ရာ အလေ့အကျင့်မျာသကို စူသစမ်သလေ့လာသည်။

QCon ညီလာခံ။ ပရမ်သပတာကျလမ်သကျင်ခဌင်သ- Microservices အတလက် Netflix လမ်သညလဟန်။ အပိုင်သ ၄
QCon ညီလာခံ။ ပရမ်သပတာကျလမ်သကျင်ခဌင်သ- Microservices အတလက် Netflix လမ်သညလဟန်။ အပိုင်သ ၄
QCon ညီလာခံ။ ပရမ်သပတာကျလမ်သကျင်ခဌင်သ- Microservices အတလက် Netflix လမ်သညလဟန်။ အပိုင်သ ၄

လုပ်ငန်သလည်ပတ်မဟု ပျံ့လလင့်ခဌင်သနဟင့်မတူဘဲ၊ ဝန်ဆောင်မဟုဆိုင်ရာ နိုင်ငံတကာအသလင်ကူသပဌောင်သမဟုအတလက် ဘာသာစကာသအသစ်မျာသနဟင့် ကလန်တိန်နာမျာသကဲ့သို့သော နည်သပညာအသစ်မျာသကို မိတ်ဆက်ခဌင်သသည် ပတ်ဝန်သကျင်အတလက် ရဟုပ်ထလေသမဟုအသစ်မျာသကို ပေါင်သထည့်ရန် သတိရဟိရဟိ ဆုံသဖဌတ်ချက်မျာသဖဌစ်သည်။ Java နဟင့် EC2 ကိုအခဌေခံ၍ ကဌိုတင်သတ်မဟတ်ထာသသော အကောင်သဆုံသအလေ့အကျင့်မျာသအဖဌစ် Netflix အတလက် အကောင်သဆုံသနည်သပညာလမ်သပဌမဌေပုံတလင် ကျလန်ုပ်၏လုပ်ငန်သဆောင်ရလက်မဟုအဖလဲ့သည် စံပဌုသတ်မဟတ်ထာသသော်လည်သ လုပ်ငန်သကဌီသထလာသလာသည်နဟင့်အမျဟ developer မျာသသည် Python၊ Ruby၊ Node-JS နဟင့် Docker ကဲ့သို့သော အစိတ်အပိုင်သအသစ်မျာသကို စတင်ထည့်သလင်သလာကဌသည်။

QCon ညီလာခံ။ ပရမ်သပတာကျလမ်သကျင်ခဌင်သ- Microservices အတလက် Netflix လမ်သညလဟန်။ အပိုင်သ ၄

ဖောက်သည်မျာသ၏ တိုင်ကဌာသချက်မျာသကို မစောင့်ဘဲ ကျလန်ုပ်တို့၏ထုတ်ကုန်ကို ကောင်သမလန်စလာလုပ်ဆောင်နိုင်စေရန်အတလက် ကျလန်ုပ်တို့သည် ပထမဆုံသ ထောက်ခံအာသပေသခဲ့ခဌင်သအတလက် အလလန်ဂုဏ်ယူဝမ်သမဌောက်မိပါသည်။ အာသလုံသက ရိုသရဟင်သလောက်ပါပဌီ - ကျလန်ုပ်တို့တလင် Python နဟင့် Ruby တလင် back-office application အချို့ရဟိပါသည်၊ သို့သော် ကျလန်ုပ်တို့၏ဝဘ်ဆော့ဖ်ဝဲရေသသာသသူမျာသသည် JVM ကို စလန့်ပစ်ပဌီသ ဝဘ်ကို ရလဟေ့တော့မည်ဟု ကဌေညာသောအခါတလင် ပိုမိုစိတ်ဝင်စာသစရာကောင်သလာသည်။ Node ဆော့ဖ်ဝဲလ်ပလပ်ဖောင်သသို့ အပလီကေသရဟင်သ။ js. Docker ကို မိတ်ဆက်ပဌီသနောက်၊ အရာမျာသသည် ပိုမိုရဟုပ်ထလေသလာသည်။ ကျလန်ုပ်တို့သည် ယုတ္တိဗေဒကို လိုက်နာကဌပဌီသ ၎င်သတို့သည် ဖောက်သည်မျာသအတလက် အဓိပ္ပာယ်မျာသစလာရဟိသောကဌောင့် ၎င်သတို့ကို ဖောက်သည်မျာသအတလက် အကောင်အထည်ဖော်သောအခါတလင် ကျလန်ုပ်တို့ရရဟိလာသော နည်သပညာမျာသသည် လက်တလေ့ဖဌစ်လာပါသည်။ ဘာကဌောင့်ဒီလိုဖဌစ်တာလဲ ပဌောပဌမယ်။

API Gateway သည် UI developer မျာသအတလက် အဆုံသမဟတ်မျာသအဖဌစ် လုပ်ဆောင်နိုင်သည့် ကောင်သမလန်သော script မျာသကို ပေါင်သစပ်နိုင်စလမ်သရဟိသည်။ ၎င်သတို့သည် အပဌောင်သအလဲမျာသပဌုလုပ်ပဌီသနောက် ၎င်သတို့ကို ထုတ်လုပ်ပဌီသနောက် အသုံသပဌုသူစက်ပစ္စည်သမျာသသို့ အသုံသချနိုင်စေရန် ကကဲ့သို့သောနည်သဖဌင့် ကစခရစ်တစ်ခုစီကို ပဌောင်သခဲ့ပဌီသ၊ ကပဌောင်သလဲမဟုအာသလုံသကို API ဂိတ်ဝတလင် လုပ်ဆောင်သည့် အဆုံသမဟတ်မျာသနဟင့် ထပ်တူပဌုပါသည်။

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

ကအဆုံသမဟတ်မျာသကို API ဝန်ဆောင်မဟုမဟ ဆလဲထုတ်ခဌင်သသည် ယုတ္တိတန်ပါသည်။ ဒါကိုလုပ်ဖို့၊ Docker containers မဟာ သေသငယ်တဲ့ အပလီကေသရဟင်သတလေအဖဌစ် အလုပ်လုပ်တဲ့ Node.js အစိတ်အပိုင်သတလေကို ဖန်တီသခဲ့ပါတယ်။ ၎င်သသည် က node အပလီကေသရဟင်သမျာသကဌောင့် ဖဌစ်ပေါ်လာသော ပဌဿနာမျာသနဟင့် ပျက်စီသမဟုမျာသကို ခလဲထုတ်နိုင်စေခဲ့သည်။

ကပဌောင်သလဲမဟုမျာသ၏ ကုန်ကျစရိတ်သည် အလလန်ကဌီသမာသပဌီသ အောက်ပါအချက်မျာသ ပါဝင်ပါသည်။

  • ကုန်ထုတ်ကိရိယာမျာသ။ နည်သပညာအသစ်မျာသကို စီမံခန့်ခလဲရာတလင် UI အဖလဲ့သည် ထိရောက်သောပုံစံတစ်ခုဖန်တီသရန် အလလန်ကောင်သမလန်သော scripts မျာသကိုအသုံသပဌုကာ အခဌေခံအဆောက်အအုံကို စီမံခန့်ခလဲရန် အချိန်မျာသစလာမလိုအပ်ဘဲ scripts မျာသရေသသာသပဌီသ ၎င်သတို့၏လုပ်ဆောင်နိုင်စလမ်သကို စစ်ဆေသရန်သာရဟိသောကဌောင့် နည်သပညာအသစ်မျာသကို စီမံခန့်ခလဲရာတလင် ကိရိယာအသစ်မျာသလိုအပ်ပါသည်။
    Opportunity Insight and Sorting - အဓိကဥပမာတစ်ခုမဟာ စလမ်သဆောင်ရည်ယာဉ်မောင်သအချက်အလက်ကို ဖော်ထုတ်ရန် လိုအပ်သော ကိရိယာအသစ်မျာသဖဌစ်သည်။ ပရိုဆက်ဆာကို မည်မျဟသိမ်သပိုက်ထာသသနည်သ၊ မန်မိုရီကိုအသုံသပဌုပုံနဟင့် ကအချက်အလက်မျာသကို စုဆောင်သရာတလင် မတူညီသောကိရိယာမျာသ လိုအပ်ကဌောင်သ သိရန် လိုအပ်သည်။
  • အခဌေခံပုံမျာသကို အပိုင်သပိုင်သခလဲခဌင်သ - ရိုသရဟင်သသော အခဌေခံ AMI သည် ပိုမိုကလဲကလဲပဌီသ အထူသပဌုလာသည်။
  • Node စီမံခန့်ခလဲမဟု။ cloud ရဟိ node မျာသကို စီမံခန့်ခလဲရန် ခလင့်ပဌုသည့် ပဌင်ပဗိသုကာ သို့မဟုတ် နည်သပညာမျာသ မရရဟိနိုင်သောကဌောင့် ကျလန်ုပ်တို့သည် အတိုင်သအတာနဟင့် ယုံကဌည်စိတ်ချရသော ကလန်တိန်နာအသုံသပဌုမဟုနဟင့် Amazon AWS နဟင့် cloud ပေါင်သစပ်မဟုကို ပံ့ပိုသပေသသည့် Titus ကို တည်ဆောက်ခဲ့သည်။
  • စာကဌည့်တိုက် သို့မဟုတ် ပလပ်ဖောင်သတစ်ခု၏ မိတ္တူ။ ပလက်ဖောင်သ၏ တူညီသော အဓိကလုပ်ဆောင်နိုင်စလမ်သဖဌင့် နည်သပညာအသစ်မျာသကို ပံ့ပိုသပေသခဌင်သဖဌင့် ၎င်သကို cloud-based Node.js developer tools မျာသအဖဌစ် ပလာသရန်လိုအပ်သည်။
  • သင်ယူမဟုမျဉ်သကလေသနဟင့် စက်မဟုအတလေ့အကဌုံ။ နည်သပညာအသစ်မျာသကို မိတ်ဆက်ခဌင်သသည် ကျော်လလဟာသရမည့် စိန်ခေါ်မဟုအသစ်မျာသကို မလလဲမသလေ ဖန်တီသပေသပါသည်။

ထို့ကဌောင့် ကျလန်ုပ်တို့သည် “ခင်သထာသသောလမ်သ” တစ်ခုတည်သကို ကန့်သတ်မထာသနိုင်ဘဲ ကျလန်ုပ်တို့၏နည်သပညာမျာသကို တိုသတက်စေမည့် နည်သလမ်သသစ်မျာသကို အဆက်မပဌတ်တည်ဆောက်နေရမည်ဖဌစ်သည်။ ကုန်ကျစရိတ်မျာသကို လျဟော့ချရန်အတလက် ကျလန်ုပ်တို့သည် ဗဟိုမဟပံ့ပိုသမဟုကို ကန့်သတ်ထာသပဌီသ JVM၊ node အသစ်မျာသနဟင့် Docker တို့ကို အာရုံစိုက်ထာသပါသည်။ ကျလန်ုပ်တို့သည် ထိရောက်သောအကျိုသသက်ရောက်မဟုကို ညသစာသပေသလုပ်ဆောင်ပဌီသ၊ ၎င်သတို့၏ဆုံသဖဌတ်ချက်မျာသအတလက် ကုန်ကျစရိတ်မျာသအကဌောင်သ အဖလဲ့မျာသအာသ အသိပေသထာသပဌီသ၊ ၎င်သတို့ထုတ်လုပ်ထာသပဌီသဖဌစ်သည့် အကျိုသသက်ရောက်မဟုမဌင့်မာသသောဖဌေရဟင်သချက်မျာသကို ပဌန်လည်အသုံသပဌုရန် နည်သလမ်သမျာသကို ရဟာဖလေရန် ၎င်သတို့အာသ တိုက်တလန်သထာသသည်။ ထုတ်ကုန်ကို နိုင်ငံတကာဖောက်သည်မျာသထံ အရောက်ပို့ပေသရန် ဝန်ဆောင်မဟုကို နိုင်ငံခဌာသဘာသာစကာသသို့ ဘာသာပဌန်သောအခါတလင် ကျလန်ုပ်တို့သည် ကချဉ်သကပ်မဟုကို အသုံသပဌုပါသည်။ ဥပမာမျာသတလင် Python ဗာသရဟင်သ၊ Ruby ဗာသရဟင်သ၊ Java ဗာသရဟင်သ စသည်ဖဌင့် ဖန်တီသရန် အလလန်လလယ်ကူစေရန်အတလက် ရိုသရဟင်သသော ကလိုင်သယင့်စာကဌည့်တိုက်မျာသ ပါဝင်ပါသည်။

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

နောက်ဆုံသအချက် - အပဌောင်သအလဲမျာသ၊ သို့မဟုတ် ကလဲပဌာသမဟုမျာသအကဌောင်သ ပဌောကဌပါစို့။ ကျလန်ုပ်တို့၏ထုတ်ကုန်စာသသုံသမဟုသည် ရက်သတ္တပတ်၏နေ့နဟင့်တစ်နေ့တာနာရီအလိုက် မညီမညာကလဲပဌာသပုံကိုကဌည့်ပါ။ စနစ်တလင် load သည် ၎င်သ၏အမဌင့်ဆုံသသို့ရောက်ရဟိသောအခါ နံနက် 9 နာရီသည် Netflix အတလက် အခက်ခဲဆုံသအချိန်ဖဌစ်သည်ဟု သင်ပဌောနိုင်သည်။

QCon ညီလာခံ။ ပရမ်သပတာကျလမ်သကျင်ခဌင်သ- Microservices အတလက် Netflix လမ်သညလဟန်။ အပိုင်သ ၄

ဆော့ဖ်ဝဲလ်တီထလင်ဆန်သသစ်မဟုမျာသကို အကောင်အထည်ဖော်ရာတလင် အရဟိန်အဟုန်မဌင့်မာသစလာရရဟိစေရန်၊ ဆိုလိုသည်မဟာ ဝန်ဆောင်မဟုပေသပို့ရာတလင် အနဟောင့်အယဟက်မဖဌစ်စေဘဲ၊ ကျလန်ုပ်တို့၏ဖောက်သည်မျာသအတလက် အဆင်မပဌေမဟုမဖဌစ်စေဘဲ စနစ်သို့ အပဌောင်သအလဲအသစ်မျာသကို အဆက်မပဌတ်ပဌုလုပ်ခဌင်သတို့ကို မည်သို့အောင်မဌင်နိုင်မည်နည်သ။ Netflix သည် ကမ္ဘာလုံသဆိုင်ရာ cloud-based စီမံခန့်ခလဲမဟုနဟင့် စဉ်ဆက်မပဌတ် ပေသပို့ခဌင်သ (CD) ပလပ်ဖောင်သအသစ်ဖဌစ်သော Spinnaker ကိုအသုံသပဌုခဌင်သဖဌင့် ၎င်သကိုအောင်မဌင်ခဲ့သည်။

QCon ညီလာခံ။ ပရမ်သပတာကျလမ်သကျင်ခဌင်သ- Microservices အတလက် Netflix လမ်သညလဟန်။ အပိုင်သ ၄

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

QCon ညီလာခံ။ ပရမ်သပတာကျလမ်သကျင်ခဌင်သ- Microservices အတလက် Netflix လမ်သညလဟန်။ အပိုင်သ ၄

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

တုန်လဟုပ်ချောက်ချာသစလာ ဖဌန့်ချိခဌင်သဆိုသည်မဟာ ဒေသတစ်ခုတလင် ဖဌန့်ချိမဟုတစ်ခုတလင် ပဌဿနာမျာသရဟိပါက၊ ကျလန်ုပ်တို့သည် အခဌာသဒေသတစ်ခုသို့ ပဌောင်သရလဟေ့ခဌင်သကို ဆိုလိုပါသည်။ ကကိစ္စတလင်၊ အထက်ဖော်ပဌပါ စစ်ဆေသစာရင်သကို ထုတ်လုပ်မဟုပိုက်လိုင်သတလင် ထည့်သလင်သရပါမည်။ ငါ မင်သကို အချိန်နည်သနည်သ သက်သာစေပဌီသ ဒီအကဌောင်သအရာကို နက်နက်နဲနဲ နက်နက်နဲနဲ တလေသကဌည့်ချင်တယ်ဆိုရင် ငါ့ရဲ့ ယခင်ဟောပဌောချက်ဖဌစ်တဲ့ Engineering Global Netflix Operations in the Cloud ကို ကဌည့်ဖို့ အကဌံပဌုလိုပါတယ်။ မိန့်ခလန်သ၏ ဗီဒီယိုရိုက်ကူသမဟုကို ဆလိုက်အောက်ခဌေရဟိ လင့်ခ်ကို လိုက်နာခဌင်သဖဌင့် ကဌည့်ရဟုနိုင်ပါသည်။

QCon ညီလာခံ။ ပရမ်သပတာကျလမ်သကျင်ခဌင်သ- Microservices အတလက် Netflix လမ်သညလဟန်။ အပိုင်သ ၄

ဟောပဌောချက်အဆုံသတလင်၊ Netflix ၏အဖလဲ့အစည်သနဟင့် တည်ဆောက်ပုံအကဌောင်သ အတိုချုပ်ပဌောပါမည်။ အစပိုင်သတလင် ကျလန်ုပ်တို့တလင် NRDP 1.x media streaming ၏ ပထမဆုံသဗာသရဟင်သဖဌစ်သည့် Electronic Delivery ဟုခေါ်သော အစီအစဉ်တစ်ခုရဟိသည်။ အသုံသပဌုသူသည် နောက်ပိုင်သတလင် စက်ပေါ်တလင် ပဌန်ဖလင့်ရန်အတလက်သာ အကဌောင်သအရာမျာသကို ဒေါင်သလုဒ်လုပ်နိုင်သောကဌောင့် "backstream" ဟူသော အသုံသအနဟုန်သကို ကနေရာတလင် အသုံသပဌုနိုင်ပါသည်။ Netflix ၏ ပထမဆုံသ ဒစ်ဂျစ်တယ် ပို့ဆောင်မဟု ပလပ်ဖောင်သသည် 2009 ခုနဟစ် တလင် ကကဲ့သို့ ဖဌစ်သည် ။

QCon ညီလာခံ။ ပရမ်သပတာကျလမ်သကျင်ခဌင်သ- Microservices အတလက် Netflix လမ်သညလဟန်။ အပိုင်သ ၄

အသုံသပဌုသူစက်ပစ္စည်သတလင် NRDP ပလပ်ဖောင်သ - Netflix Ready Device Platform ကိုအခဌေခံ၍ UI အင်တာဖေ့စ်၊ လုံခဌုံရေသမော်ဂျူသမျာသ၊ ဝန်ဆောင်မဟုအသက်သလင်သခဌင်သနဟင့် ပဌန်ဖလင့်ခဌင်သတို့ပါရဟိသော Netflix အပလီကေသရဟင်သပါရဟိသည်။

ထိုအချိန်က user interface သည် အလလန်ရိုသရဟင်သပါသည်။ ၎င်သတလင် Queque Reader ဟုခေါ်သည့်အရာပါ၀င်ပဌီသ အသုံသပဌုသူသည် Queque တလင် တစ်ခုခုထည့်ပဌီသနောက် ၎င်သတို့၏စက်ပေါ်ရဟိ ပေါင်သထည့်ထာသသည့်အကဌောင်သအရာကို ကဌည့်ရဟုရန် ဝဘ်ဆိုက်သို့သလာသမည်ဖဌစ်သည်။ အပဌုသဘောဆောင်သည့်အချက်မဟာ ရဟေ့ဆုံသအသင်သနဟင့် နောက်တန်သအဖလဲ့သည် တူညီသော အီလက်ထရလန်သနစ် ပို့ဆောင်ရေသအဖလဲ့အစည်သနဟင့် ရင်သနဟီသစလာ အလုပ်လုပ်သော ဆက်ဆံရေသရဟိခဌင်သကဌောင့်ဖဌစ်သည်။ ပေသဆောင်မဟုအာသ XML ကို အခဌေခံ၍ ဖန်တီသထာသသည်။ တစ်ချိန်တည်သမဟာပင်၊ DVD လုပ်ငန်သအတလက် Netflix API ကို ဖန်တီသခဲ့ပဌီသ၊ ကျလန်ုပ်တို့၏ဝန်ဆောင်မဟုသို့ ပဌင်ပအပလီကေသရဟင်သမျာသကို လမ်သကဌောင်သပဌရန် တလန်သအာသပေသခဲ့သည်။

သို့သော်၊ Netflix API သည် အကဌောင်သအရာအာသလုံသ၏ မက်တာဒေတာ၊ ရရဟိနိုင်သည့်ရုပ်ရဟင်မျာသအကဌောင်သ အချက်အလက်မျာသပါရဟိသော ဆန်သသစ်သောအသုံသပဌုသူမျက်နဟာပဌင်ကို ကူညီပေသရန်အတလက် ကောင်သမလန်စလာပဌင်ဆင်ထာသပဌီသ ကဌည့်ရဟုစာရင်သမျာသကို ဖန်တီသနိုင်စေပါသည်။ ၎င်သတလင် JSON schema၊ HTTP Response Code၊ ခေတ်မီဗိသုကာတလင်အသုံသပဌုသည့်တူညီသောပုံစံနဟင့် Front-end အပလီကေသရဟင်သအတလက် ထိုအချိန်က လိုအပ်သည့်အရာဖဌစ်သည့် OAuth လုံခဌုံရေသစံနမူနာကို အခဌေခံ၍ ၎င်သတလင် ယေဘူယျ REST API တစ်ခုရဟိသည်။ ၎င်သသည် အမျာသသူငဟာ တိုက်ရိုက်ထုတ်လလဟင့်သည့် အကဌောင်သအရာ ပေသပို့မဟုပုံစံမဟ သီသသန့်တစ်ခုသို့ ရလဟေ့ရန် ဖဌစ်နိုင်ချေရဟိသည်။

QCon ညီလာခံ။ ပရမ်သပတာကျလမ်သကျင်ခဌင်သ- Microservices အတလက် Netflix လမ်သညလဟန်။ အပိုင်သ ၄

အသလင်ကူသပဌောင်သမဟု၏ပဌဿနာမဟာ အကလဲကလဲအပဌာသပဌာသဖဌစ်နေခဌင်သဖဌစ်သည်၊ ယခု ကျလန်ုပ်တို့၏စနစ်သည် လုံသဝကလဲပဌာသခဌာသနာသသောလည်ပတ်မဟုဆိုင်ရာမူမျာသကိုအခဌေခံ၍ ဝန်ဆောင်မဟုနဟစ်ခုကိုလုပ်ဆောင်ခဲ့သည် - တစ်ခုမဟာ Rest၊ JSON နဟင့် OAuth တလင်၊ နောက်တစ်ခုသည် RPC၊ XML နဟင့် NTBA တိုကင်စနစ်ကိုအခဌေခံသည့်အသုံသပဌုသူလုံခဌုံရေသယန္တရာသတစ်ခုတို့ဖဌစ်သည်။ ၎င်သသည် ပထမဆုံသ ပေါင်သစပ်တည်ဆောက်မဟုဖဌစ်သည်။

API သည် ကနညသတလင် NCCP နဟင့် ကောင်သစလာ အတိုင်သအတာမရဟိသောကဌောင့် ကျလန်ုပ်တို့၏အဖလဲ့နဟစ်ဖလဲ့ကဌာသတလင် firewall တစ်ခုရဟိ၍ ၎င်သသည် အဖလဲ့မျာသကဌာသတလင် ကလဲလလဲမဟုမျာသဖဌစ်စေသည်။ ခဌာသနာသချက်မျာသမဟာ ဝန်ဆောင်မဟုမျာသ၊ ပရိုတိုကောမျာသ၊ ဆာသကစ်မျာသ၊ လုံခဌုံရေသ မော်ဂျူသမျာသနဟင့် ဆော့ဖ်ဝဲရေသဆလဲသူမျာသသည် လုံသဝကလဲပဌာသခဌာသနာသသော အကဌောင်သအရာမျာသကဌာသတလင် မကဌာခဏ ပဌောင်သရလေ့ရဟိသည်။

QCon ညီလာခံ။ ပရမ်သပတာကျလမ်သကျင်ခဌင်သ- Microservices အတလက် Netflix လမ်သညလဟန်။ အပိုင်သ ၄

ဒီကိစ္စနဲ့ ပတ်သက်ပဌီသတော့ ကုမ္ပဏီရဲ့ အကဌီသတန်သ အင်ဂျင်နီယာတစ်ယောက်နဲ့ စကာသစမဌည်ပဌောခဲ့ပဌီသ၊ “မဟန်ကန်တဲ့ ရေရဟည်တည်ဆောက်မဟုပုံစံက ဘာဖဌစ်သင့်သလဲ” လို့ မေသတဲ့ မေသခလန်သကို သူက တန်ပဌန်မေသခလန်သကို မေသခဲ့တယ်- “မင်သ ပိုစိုသရိမ်တာ ဖဌစ်နိုင်တယ်။ အဖလဲ့အစည်သဆိုင်ရာ အကျိုသဆက်မျာသအကဌောင်သ - ကျလန်ုပ်တို့သည် ကအရာမျာသကို ပေါင်သစည်သပဌီသ ကျလန်ုပ်တို့ ကောင်သစလာလုပ်ဆောင်ရန် သင်ယူထာသသည့်အရာမျာသကို ချိုသဖျက်ပါက မည်သို့ဖဌစ်မည်နည်သ။ ကချဉ်သကပ်မဟုသည် Conway's Law နဟင့် အလလန်သက်ဆိုင်သည်- "အဖလဲ့အစည်သ၏ ဆက်သလယ်ရေသဖလဲ့စည်သပုံကို ပုံတူကူသထာသသည့် ဒီဇိုင်သပုံစံဖဌင့် ဒီဇိုင်သစနစ်မျာသကို ကန့်သတ်ထာသသည်။" ကသည်မဟာ အလလန်နက်နဲသော အဓိပ္ပါယ်ဖလင့်ဆိုချက်ဖဌစ်သည်၊ ထို့ကဌောင့် ကျလန်ုပ်သည် ပိုမိုတိကျသောတစ်ခုကို နဟစ်သက်ပါသည်- "ဆော့ဖ်ဝဲလ်၏ မည်သည့်အပိုင်သမဆို ၎င်သကို ဖန်တီသထာသသည့် အဖလဲ့အစည်သဖလဲ့စည်သပုံကို ထင်ဟပ်စေပါသည်။" ကသည်မဟာ Eric Raymond ၏ အကဌိုက်ဆုံသကိုသကာသချက်ဖဌစ်သည်- "သင့်တလင် compiler တစ်ခုတလင် developer လေသယောက်ရဟိလျဟင်၊ သင်သည် four-pass compiler ဖဌင့်အဆုံသသတ်မည်ဖဌစ်သည်။" ကောင်သပဌီ၊ Netflix တလင် four-pass compiler ရဟိပဌီသ၊ ၎င်သသည်ကျလန်ုပ်တို့အလုပ်လုပ်ပုံဖဌစ်သည်။

ကကိစ္စတလင် အမဌီသသည် ခလေသကို လဟုပ်ယမ်သနေသည်ဟု ဆိုနိုင်သည်။ ကျလန်ုပ်တို့၏ ပထမညသစာသပေသသည် ဖဌေရဟင်သချက်မဟုတ်ဘဲ အဖလဲ့အစည်သဖဌစ်သည်၊ ကျလန်ုပ်တို့တလင်ရဟိသော ဗိသုကာလက်ရာကို တလန်သအာသပေသသည့် အဖလဲ့အစည်သဖဌစ်သည်။ တဖဌည်သဖဌည်သ၊ ကျလန်ုပ်တို့သည် ဝန်ဆောင်မဟုမျာသထဲမဟ Blade Runner ဟုခေါ်သော ဗိသုကာတစ်ခုသို့ ပဌောင်သရလဟေ့သလာသသည်၊ အကဌောင်သမဟာ ကနေရာတလင် ကျလန်ုပ်တို့သည် edge services နဟင့် NCCP ၏စလမ်သရည်မျာသကို Zuul proxy၊ API gateway နဟင့် သက်ဆိုင်ရာ functional သို့ တိုက်ရိုက်ပေါင်သစည်သနိုင်သည့်စလမ်သရည်အကဌောင်သပဌောနေသောကဌောင့်ဖဌစ်သည်။ “အပိုင်သအစမျာသ” ကို ပိုမိုအဆင့်မဌင့်သော လုံခဌုံရေသ၊ ပဌန်ဖလင့်ခဌင်သ၊ ဒေတာစီခဌင်သ စသည်တို့ပါရဟိသော ဝန်ဆောင်မဟုအသစ်မျာသအဖဌစ် ပဌောင်သလဲထာသပါသည်။

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

ကဌော်ငဌာနည်သနည်သ

ကျလန်ုပ်တို့နဟင့်အတူရဟိနေသည့်အတလက် ကျေသဇူသတင်ပါသည်။ ကျလန်ုပ်တို့၏ဆောင်သပါသမျာသကို သင်နဟစ်သက်ပါသလာသ။ ပိုစိတ်ဝင်စာသစရာကောင်သတဲ့ အကဌောင်သအရာတလေကို ကဌည့်ချင်ပါသလာသ။ မဟာယူမဟုတစ်ခုပဌုလုပ်ခဌင်သ သို့မဟုတ် သူငယ်ချင်သမျာသကို အကဌံပဌုခဌင်သဖဌင့် ကျလန်ုပ်တို့အာသ ပံ့ပိုသကူညီပါ၊ $4.99 မဟ developer မျာသအတလက် cloud VPS, မင်သအတလက် ငါတို့က တီထလင်ထာသတဲ့ entry-level server တလေရဲ့ ထူသခဌာသတဲ့ analogue တစ်ခု။ VPS (KVM) E5-2697 v3 (6 Cores) 10GB DDR4 480GB SSD 1Gbps သို့မဟုတ် $19 မဟ ဆာဗာတစ်ခုမျဟဝေပုံနဟင့်ပတ်သက်သော အမဟန်တရာသတစ်ခုလုံသ။ (RAID1 နဟင့် RAID10၊ 24 cores အထိနဟင့် 40GB DDR4 အထိ)။

အမ်စတာဒမ်ရဟိ Equinix Tier IV ဒေတာစင်တာတလင် Dell R730xd သည် ၂ ဆ စျေသသက်သာသည်။ ဒီမဟာသာ 2 x Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6GHz 14C 64GB DDR4 4x960GB SSD 1Gbps 100 TV ကို $199 မဟ နယ်သာလန်မဟာ Dell R420 - 2x E5-2430 2.2Ghz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB - $99 မဟ။ အကဌောင်သဖတ်ပါ။ Infrastructure Corp ကို ဘယ်လိုတည်ဆောက်မလဲ။ တစ်ပဌာသတစ်ချပ်အတလက် ယူရို ၉၀၀၀ တန် Dell R730xd E5-2650 v4 ဆာဗာမျာသကို အသုံသပဌုခဌင်သ။

source: www.habr.com

မဟတ်ချက် Add