မီခေသလ်ဆာလိုဆင်။ Golang တလေ့ဆုံပလဲ။ Look+ အပလီကေသရဟင်သ၏ နောက်ကျောတလင် Go ကို အသုံသပဌုခဌင်သ။

Mikhail Salosin (နောင် - MS): - အာသလုံသမင်္ဂလာပါ! ကျလန်တော့်နာမည်က မိုက်ကယ်ပါ။ ကျလန်ုပ်သည် MC2 Software တလင် နောက်ခံဆော့ဖ်ဝဲရေသသာသသူအဖဌစ် လုပ်ဆောင်နေပဌီသ Look+ မိုဘိုင်သအက်ပ်၏ နောက်ကလယ်တလင် Go ကို အသုံသပဌုခဌင်သအကဌောင်သ ဆလေသနလေသပါမည်။

မီခေသလ်ဆာလိုဆင်။ Golang တလေ့ဆုံပလဲ။ Look+ အပလီကေသရဟင်သ၏ နောက်ကျောတလင် Go ကို အသုံသပဌုခဌင်သ။

ဟော်ကီကို ကဌိုက်တဲ့သူရဟိလာသ။

မီခေသလ်ဆာလိုဆင်။ Golang တလေ့ဆုံပလဲ။ Look+ အပလီကေသရဟင်သ၏ နောက်ကျောတလင် Go ကို အသုံသပဌုခဌင်သ။

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

မီခေသလ်ဆာလိုဆင်။ Golang တလေ့ဆုံပလဲ။ Look+ အပလီကေသရဟင်သ၏ နောက်ကျောတလင် Go ကို အသုံသပဌုခဌင်သ။

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

ဖလံ့ဖဌိုသတိုသတက်ရေသမဟာ ဘာကိုသုံသခဲ့လဲ။

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

ကျလန်ုပ်တို့သည် PostgreSQL ကို ဒေတာဘေ့စ်အဖဌစ် အသုံသပဌုခဲ့သည်။ တည်သဖဌတ်သူ အင်တာဖေ့စ်ကို ActiveAdmin ကျောက်မျက်ကို အသုံသပဌု၍ Ruby on Rails တလင် ရေသသာသထာသသည်။ စာရင်သဇယာသပံ့ပိုသပေသသူထံမဟ စာရင်သဇယာသတင်သလင်သခဌင်သကို Ruby တလင်လည်သ ရေသသာသထာသသည်။

စနစ် API စမ်သသပ်မဟုမျာသအတလက် Python unittest ကို အသုံသပဌုခဲ့သည်။ Memcached ကို API ငလေပေသချေမဟုခေါ်ဆိုမဟုမျာသကို အရဟိန်မဌဟင့်ရန် အသုံသပဌုသည်၊ "စာသဖိုမဟူသ" သည် ဖလဲ့စည်သမဟုပုံစံကို ထိန်သချုပ်ရန် အသုံသပဌုသည်၊ Zabbix သည် အတလင်သပိုင်သစနစ်စာရင်သအင်သမျာသကို စုဆောင်သရန်နဟင့် စောင့်ကဌည့်ရန် အသုံသပဌုသည်။ Graylog2 သည် မဟတ်တမ်သမျာသ စုဆောင်သရန်အတလက်ဖဌစ်ပဌီသ၊ Slate သည် သုံသစလဲသူမျာသအတလက် API စာရလက်စာတမ်သဖဌစ်သည်။

မီခေသလ်ဆာလိုဆင်။ Golang တလေ့ဆုံပလဲ။ Look+ အပလီကေသရဟင်သ၏ နောက်ကျောတလင် Go ကို အသုံသပဌုခဌင်သ။

ပရိုတိုကော ရလေသချယ်မဟု

ကျလန်ုပ်တို့ကဌုံတလေ့ရသည့် ပထမဆုံသပဌဿနာ- အောက်ပါအချက်မျာသအပေါ် အခဌေခံ၍ backend နဟင့် mobile clients မျာသကဌာသ အပဌန်အလဟန်အကျိုသသက်ရောက်မဟုအတလက် ပရိုတိုကောကို ရလေသချယ်ရန် လိုအပ်ပါသည်...

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

၎င်သကိုအခဌေခံ၍ ကျလန်ုပ်တို့တလင် ပရိုတိုကော ရလေသချယ်စရာနဟစ်ခုရဟိသည်။

  1. ဝက်ဘ်ဆိုဒ်မျာသ သို့သော် ကျလန်ုပ်တို့သည် သုံသစလဲသူထံမဟ ဆာဗာသို့ ချန်နယ်မျာသ မလိုအပ်ပါ။ ကျလန်ုပ်တို့သည် ဆာဗာမဟ အပ်ဒိတ်မျာသကို ကလိုင်သယင့်ထံသို့ ပေသပို့ရန်သာ လိုအပ်သောကဌောင့် websocket သည် မလိုအပ်သော ရလေသချယ်မဟုတစ်ခုဖဌစ်သည်။
  2. Server-Sent Events (SSE) ပေါ်လာသည် ။ ၎င်သသည် အလလန်ရိုသရဟင်သပဌီသ အခဌေခံအာသဖဌင့် ကျလန်ုပ်တို့လိုအပ်သမျဟကို ဖဌည့်ဆည်သပေသသည်။

ဆာဗာ- ပေသပို့သည့် အစီအစဉ်မျာသ

ကအရာသည် မည်သို့လုပ်ဆောင်သည်နဟင့် ပတ်သက်၍ စကာသအနည်သငယ် ...

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

မီခေသလ်ဆာလိုဆင်။ Golang တလေ့ဆုံပလဲ။ Look+ အပလီကေသရဟင်သ၏ နောက်ကျောတလင် Go ကို အသုံသပဌုခဌင်သ။

ဒေတာကို ဖောက်သည်မျာသနဟင့် သဘောတူထာသသည့် ပုံစံဖဌင့် ပေသပို့နိုင်သည်။ ကျလန်ုပ်တို့၏ကိစ္စတလင်၊ ကျလန်ုပ်တို့သည် ၎င်သကို ကဖောင်ပုံစံဖဌင့် ပေသပို့လိုက်သည်- ပဌောင်သလဲထာသသောဖလဲ့စည်သပုံ (လူ၊ ကစာသသမာသ) အမည်ကို ပလဲအကလက်သို့ ပေသပို့ခဲ့ပဌီသ ကစာသသမာသအတလက် အသစ်ပဌောင်သလဲထာသသော JSON ကို ဒေတာအကလက်သို့ ပေသပို့ခဲ့သည်။

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

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

မီခေသလ်ဆာလိုဆင်။ Golang တလေ့ဆုံပလဲ။ Look+ အပလီကေသရဟင်သ၏ နောက်ကျောတလင် Go ကို အသုံသပဌုခဌင်သ။

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

တိုက်ရိုက်ချိတ်ဆက်မဟုကို မည်သို့ဝန်ဆောင်မဟုပေသသနည်သ။

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

မီခေသလ်ဆာလိုဆင်။ Golang တလေ့ဆုံပလဲ။ Look+ အပလီကေသရဟင်သ၏ နောက်ကျောတလင် Go ကို အသုံသပဌုခဌင်သ။

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

ထို့ကဌောင့်၊ ယခု ကျလန်ုပ်တို့၏ ping သည် အပ်ဒိတ်မဟလာသော တူညီသောချန်နယ်မဟ လာပါသည်။

ထို့ကဌောင့်၊ 15 စက္ကန့်တိုင်သတစ်ကဌိမ် အမဟတ်ခဌစ်သည့် timer တစ်ခုသာရဟိသည်။

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

မီခေသလ်ဆာလိုဆင်။ Golang တလေ့ဆုံပလဲ။ Look+ အပလီကေသရဟင်သ၏ နောက်ကျောတလင် Go ကို အသုံသပဌုခဌင်သ။

အပ်ဒိတ်မျာသ ပေသပို့ခဌင်သအတလက် ယန္တရာသ

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

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

မီခေသလ်ဆာလိုဆင်။ Golang တလေ့ဆုံပလဲ။ Look+ အပလီကေသရဟင်သ၏ နောက်ကျောတလင် Go ကို အသုံသပဌုခဌင်သ။

PostgreSQL- နာသထောင်/အကဌောင်သကဌာသပါ။

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

မီခေသလ်ဆာလိုဆင်။ Golang တလေ့ဆုံပလဲ။ Look+ အပလီကေသရဟင်သ၏ နောက်ကျောတလင် Go ကို အသုံသပဌုခဌင်သ။

မဟတ်တမ်သတစ်ခုကို ထည့်သလင်သခဌင်သ သို့မဟုတ် ပဌောင်သလဲသည့်အခါတလင် data_updates ချန်နယ်ရဟိ အကဌောင်သကဌာသချက်လုပ်ဆောင်ချက်ကို ကျလန်ုပ်တို့ခေါ်ဆိုပဌီသ ထိုနေရာတလင် ဇယာသ၏အမည်နဟင့် ပဌောင်သလဲထာသသည့် သို့မဟုတ် ထည့်သလင်သထာသသည့် မဟတ်တမ်သ၏ identifier ကို ဖဌတ်သလာသပါသည်။

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

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

မီခေသလ်ဆာလိုဆင်။ Golang တလေ့ဆုံပလဲ။ Look+ အပလီကေသရဟင်သ၏ နောက်ကျောတလင် Go ကို အသုံသပဌုခဌင်သ။

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

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

Fan-out အလုပ်က ဘယ်လိုလဲ။

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

မီခေသလ်ဆာလိုဆင်။ Golang တလေ့ဆုံပလဲ။ Look+ အပလီကေသရဟင်သ၏ နောက်ကျောတလင် Go ကို အသုံသပဌုခဌင်သ။

Go တလင် ၎င်သကို အကောင်အထည်ဖော်ပုံ-

မီခေသလ်ဆာလိုဆင်။ Golang တလေ့ဆုံပလဲ။ Look+ အပလီကေသရဟင်သ၏ နောက်ကျောတလင် Go ကို အသုံသပဌုခဌင်သ။

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

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

ချန်နယ်ကို "နာသဆင်သူမျာသ" သို့ ပေါင်သထည့်သည့် စာရင်သသလင်သနည်သလမ်သလည်သ ရဟိပါသည်-

မီခေသလ်ဆာလိုဆင်။ Golang တလေ့ဆုံပလဲ။ Look+ အပလီကေသရဟင်သ၏ နောက်ကျောတလင် Go ကို အသုံသပဌုခဌင်သ။

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

ဆိုတဲ့မေသခလန်သကို: - ကချန်နယ်မဟတဆင့် အဘယ်အရာ ထုတ်လလဟင့်သနည်သ။

ဒေါ်: - ပဌောင်သလဲထာသသော သို့မဟုတ် ping မော်ဒယ်ကို ပို့လလဟတ်သည် (အဓိကအာသဖဌင့် ဂဏန်သ၊ ကိန်သပဌည့်)။

ဒေါ်: - သင်သည် မည်သည့်အရာကိုမဆို ပေသပို့နိုင်သည်၊ မည်သည့်ဖလဲ့စည်သပုံအာသမဆို ပေသပို့နိုင်သည်၊ ၎င်သကို ထုတ်ဝေနိုင်သည် - ၎င်သသည် JSON အဖဌစ်သို့ ပဌောင်သလဲသလာသပဌီသ ဒါပင်ဖဌစ်ပါသည်။

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

အခဌေခံအဆောက်အဦမျာသ

အခဌေခံအဆောက်အအုံဆိုင်ရာ ရဟုထောင့်ကနေ ဘယ်လိုမဌင်လဲ။ ကျလန်ုပ်တို့တလင် ဟာ့ဒ်ဝဲဆာဗာ ၇ ခု ရဟိသည်- ၎င်သတို့ထဲမဟ တစ်ခုသည် ဒေတာဘေ့စ်အတလက် လုံသလုံသလျာသလျာသ အပ်နဟံထာသပဌီသ၊ အခဌာသ ခဌောက်ခုသည် လည်ပတ်နေသည့် virtual machines ဖဌစ်သည်။ API ၏ မိတ္တူ 7 ခု ရဟိသည်- API ပါသည့် virtual machine တစ်ခုစီသည် သီသခဌာသ hardware server တစ်ခုပေါ်တလင် အလုပ်လုပ်သည် - ၎င်သသည် ယုံကဌည်စိတ်ချရမဟုအတလက်ဖဌစ်သည်။

မီခေသလ်ဆာလိုဆင်။ Golang တလေ့ဆုံပလဲ။ Look+ အပလီကေသရဟင်သ၏ နောက်ကျောတလင် Go ကို အသုံသပဌုခဌင်သ။

အသုံသပဌုနိုင်မဟု ပိုကောင်သလာစေရန် Keepalived တပ်ဆင်ထာသသော ရဟေ့တန်သနဟစ်ခုရဟိသည်၊ ထို့ကဌောင့် တစ်ခုခုဖဌစ်သလာသပါက ရဟေ့တန်သတစ်ခုသည် အခဌာသတစ်ခုကို အစာသထိုသနိုင်မည်ဖဌစ်သည်။ ထို့အပဌင် - CMS မိတ္တူနဟစ်စောင်။

စာရင်သဇယာသတင်သလင်သသူလည်သ ရဟိပါတယ်။ အရန်မျာသကို အခါအာသလျော်စလာ ပဌုလုပ်သည့် DB Slave တစ်ခုရဟိသည်။ Pigeon Pusher သည် ဖောက်သည်မျာသထံ တလန်သအာသပေသအကဌောင်သကဌာသစာမျာသ ပေသပို့သည့် အက်ပလီကေသရဟင်သတစ်ခုဖဌစ်ပဌီသ Zabbix၊ Graylog2 နဟင့် Chef။

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

Go ၏အာသသာချက်မျာသ

ကအပလီကေသရဟင်သကို ကျလန်ုပ်တို့လုပ်ဆောင်ပဌီသနောက် Go ၏ သိသာထင်ရဟာသသော အကျိုသကျေသဇူသမျာသ ထလက်ပေါ်လာခဲ့သည်။

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

မီခေသလ်ဆာလိုဆင်။ Golang တလေ့ဆုံပလဲ။ Look+ အပလီကေသရဟင်သ၏ နောက်ကျောတလင် Go ကို အသုံသပဌုခဌင်သ။

ကျလန်ုပ်တို့သည် developer မျာသကို ရဟာဖလေနေပါသည်။ လိုချင်တာရဟိရင် ကျေသဇူသပဌုပဌီသ

မေသခလန်သမျာသကို

ပရိသတ်ထံမဟမေသခလန်သ (နောင်တလင် – B): – Fan-out နဟင့်ပတ်သက်သော အရေသကဌီသသောအချက်တစ်ချက်ကို သင်လလတ်သလာသသည်ဟု ယူဆပါသည်။ ဖောက်သည်တစ်ညသထံ တုံ့ပဌန်မဟုကို ပေသပို့သည့်အခါ၊ ကလိုင်သယင့် မဖတ်လိုပါက ပိတ်ဆို့ကဌောင်သ နာသလည်သဘောပေါက်ခဌင်သမဟာ မဟန်ကန်ပါသလာသ။

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

IN: - Listen/Notify သို့ မဟတ်တမ်သတစ်ခု ချက်ခဌင်သပေသပို့နိုင်ပဌီသ identifier table မဟုတ်ပါလာသ။

ဒေါ်: - Listen/Notify သည် ၎င်သပေသပို့သည့်ကဌိုတင်တင်တလင် ဘိုက် ၈ဝဝဝ ကန့်သတ်ချက်ရဟိသည်။ မူအရ၊ အကယ်၍ ကျလန်ုပ်တို့သည် ဒေတာပမာဏအနည်သငယ်ကို ကိုင်တလယ်ဖဌေရဟင်သပါက ပေသပို့ရန်ဖဌစ်နိုင်သည်၊ သို့သော် ကနည်သ [ကျလန်ုပ်တို့ပဌုလုပ်ပုံ] သည် ရိုသရိုသရဟင်သရဟင်သသာ၍ ယုံကဌည်စိတ်ချရသည်ဟု ကျလန်ုပ်ထင်ပါသည်။ ကန့်သတ်ချက်မျာသသည် Postgres ကိုယ်တိုင်ဖဌစ်သည်။

IN: - ဖောက်သည်မျာသသည် ၎င်သတို့စိတ်မဝင်စာသသော ပလဲမျာသအကဌောင်သ အပ်ဒိတ်မျာသ လက်ခံရရဟိပါသလာသ။

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

IN: - မင်သဘာလို့ မင်သကိုယ်ပိုင် ORM လုပ်တာလဲ။

Alexey (Look+ ၏ developer မျာသထဲမဟတစ်ညသ)။ - ထိုအချိန်က (လလန်ခဲ့သည့်တစ်နဟစ်ခန့်) တလင် ORM မျာသ အမျာသအပဌာသရဟိသောအခါ ယခုထက်နည်သသည်။ ORM အမျာသစုနဲ့ပတ်သက်တဲ့ အကဌိုက်ဆုံသအချက်ကတော့ အမျာသစုဟာ ဗလာကျင်သထာသတဲ့ အင်တာဖေ့စ်ပေါ်မဟာ အလုပ်လုပ်နေတာပါပဲ။ ဆိုလိုသည်မဟာ၊ က ORMs မျာသရဟိ နည်သလမ်သမျာသသည် မည်သည့်အရာကိုမဆို ယူဆောင်ရန် အဆင်သင့်ဖဌစ်သည်- ဖလဲ့စည်သပုံတစ်ခု၊ ဖလဲ့စည်သပုံညလဟန်ပဌချက်တစ်ခု၊ နံပါတ်တစ်ခု၊ လုံသဝမသက်ဆိုင်သောအရာ...

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

IN: - လူဘယ်နဟစ်ယောက် ပါဝင်ခဲ့လဲ။

ဒေါ်: - ကနညသအဆင့်တလင် လူနဟစ်ညသ ပါဝင်ခဲ့သည်။ ကျလန်ုပ်တို့သည် ဇလန်လတလင် တစ်နေရာတလင် စတင်ခဲ့ပဌီသ သဌဂုတ်လတလင် အဓိကအပိုင်သသည် အဆင်သင့်ဖဌစ်နေပဌီ (ပထမဗာသရဟင်သ)။ စက်တင်ဘာလတလင် ထလက်ရဟိခဲ့သည်။

IN: - SSE ကို သင်ဖော်ပဌသည့်နေရာတလင် သင်သည် အချိန်ကုန်ခဌင်သကို အသုံသမပဌုပါ။ အဲဒီလို့ဘာဖဌစ်လို့?

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

IN: - မည်သည့် အပို အသုံသအဆောင်မျာသကို သင်အသုံသပဌုခဲ့သနည်သ။

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

IN: - အမဟာသရဟာရန် သင်ဘာကိုအသုံသပဌုခဲ့သနည်သ။

ဒေါ်: - စမ်သသပ်မဟုမျာသအသုံသပဌု၍ အမဟာသရဟာပဌင်ခဌင်သကို အကဌီသအကျယ်လုပ်ဆောင်ခဲ့သည်။ ကျလန်ုပ်တို့သည် မည်သည့်အမဟာသရဟာဂ် သို့မဟုတ် GOP ကိုမျဟ အသုံသမပဌုခဲ့ပါ။

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

ဒေါ်: - မရဟိပါ။ ၎င်သတို့တလင် မဌင်နိုင်စလမ်သ "ကျဉ်သမဌောင်သသော" နယ်ပယ်ရဟိသည်။ ၎င်သတို့ကို ကနေရာတလင်မဟလလဲ၍ အခဌာသမည်သည့်နေရာတလင်မဟ အသုံသမပဌုပါ (ကအတန်သ၏အတလင်သပိုင်သမဟလလဲ၍) ၎င်သသည် အလလန်ကျစ်လစ်သိပ်သည်သသည် - ၎င်သသည် 7 လိုင်သသာကဌာသည်။

IN: - ဘယ်လိုမဟ အလိုလိုသိနေသေသတာမဟုတ်ဘူသ...

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

မီခေသလ်ဆာလိုဆင်။ Golang တလေ့ဆုံပလဲ။ Look+ အပလီကေသရဟင်သ၏ နောက်ကျောတလင် Go ကို အသုံသပဌုခဌင်သ။

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

IN: – ပဌင်ပအဖလဲ့အစည်သ မဟီခိုမဟုစီမံခန့်ခလဲမဟု ပက်ကေ့ခ်ျမျာသ ရဟိပါသလာသ။

ဒေါ်: - ငါတို့က go dep သုံသတယ်။

IN: - အစီရင်ခံစာ၏ခေါင်သစဉ်တလင် ဗီဒီယိုအကဌောင်သ တစ်စုံတစ်ရာရဟိသော်လည်သ ဗီဒီယိုနဟင့်ပတ်သက်သည့် အစီရင်ခံစာတလင် ဘာမဟမရဟိပါ။

ဒေါ်: - မဟုတ်ပါ၊ ဗီဒီယိုနဟင့်ပတ်သက်သည့် အကဌောင်သအရာတလင် ကျလန်ုပ်တလင် ဘာမဟမရဟိပါ။ ၎င်သကို "Look+" ဟုခေါ်သည် - ၎င်သသည် အပလီကေသရဟင်သ၏အမည်ဖဌစ်သည်။

IN: - အဲဒါကို ဖောက်သည်တလေဆီ လလဟင့်နေတယ်လို့ မင်သပဌောခဲ့တာလာသ။

ဒေါ်: - ကျလန်ုပ်တို့သည် ဗီဒီယိုကဌည့်ရဟုခဌင်သတလင် မပါဝင်ပါ။ ဒါကို Megafon က လုံသဝလုပ်ဆောင်ခဲ့တာပါ။ ဟုတ်ကဲ့၊ လျဟောက်လလဟာကို MegaFon လို့ မပဌောခဲ့ပါဘူသ။

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

ကဌော်ငဌာအချို့ 🙂

ကျလန်ုပ်တို့နဟင့်အတူရဟိနေသည့်အတလက် ကျေသဇူသတင်ပါသည်။ ကျလန်ုပ်တို့၏ဆောင်သပါသမျာသကို သင်နဟစ်သက်ပါသလာသ။ ပိုစိတ်ဝင်စာသစရာကောင်သတဲ့ အကဌောင်သအရာတလေကို ကဌည့်ချင်ပါသလာသ။ မဟာယူမဟုတစ်ခုပဌုလုပ်ခဌင်သ သို့မဟုတ် သူငယ်ချင်သမျာသကို အကဌံပဌုခဌင်သဖဌင့် ကျလန်ုပ်တို့အာသ ပံ့ပိုသကူညီပါ၊ $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