Designing Distributed Systems (စာညွန်း)

ဟိုတလောက ရုံးက Architecture ပိုင်းအသစ်တိုးရမှာရှိလို့ Devine ညွှန်းတဲ့ စာအုပ်ကို ဖတ်ဖြစ်တယ်။ နာမည်ကလည်း ခပ်ဆင်ဆင်ဆိုတော့ Martin Kleppmann ရေးတဲ့စာအုပ်လို့ ထင်လို့ ဖတ်ပြီးပြီထင်နေတာ။ ပြန်ကြည့်မှ မဟုတ်မှန်းသိတယ်။ စာအုပ်ကတော့ ခပ်ပါးပါးပါပဲ။ အဓိက အကြောင်းအရာကတော့ Distributed Data System တွေမှာ အသုံးပြုလေ့ပြုထရှိတဲ့ Pattern တွေအကြောင်း ရေးထားတာပါ။ တချို့ pattern တွေက ကိုယ်အသုံးပြုတာ ဖြစ်ကောင်းဖြစ်ပေမယ့် နာမည်မသိတော့ အားသာချက်၊ အားနည်းချက်မသိတာမျိုးဖြစ်တတ်ပါတယ်။ ဒီစာအုပ်ဖတ်တော့ ပြန်မှန်းဆလို့ရတဲ့အပြင် နောင် ဘယ်လို pattern တွေသုံးရမလဲဆိုတာ စဉ်းစားလို့ရတော့ ဘောင်ကျယ် လာပါတယ်။ devops သမားတွေနဲ့ Architecture အပိုင်းလုပ်တဲ့သူတွေ ဖတ်သင့်တယ်လို့ မြင်ပါတယ်။
ပုံမှန်အားဖြင့် နည်းပညာနဲ့ပတ်သက်တဲ့ဟာတွေမှာ အမြန်ပြောင်းလဲတဲ့ဟာမျိုးကိုလေ့လာရင် (ဥပမာ Vue တို့ Laravel တို့မျိုးကို) Video တို့ tutorial တို့ဖတ်တာက Up to date ဖြစ်သလို လုပ်ရင်းဖတ်ရင်းဆိုတော့ ပို၍ခရီးရောက်သလို ခံစားရပါတယ်။ ဒါပေမယ့် ဘယ်လိုလုပ်ရမလဲ လုပ်ထုံးလုပ်နည်းတွေနဲ့ Pattern တွေကိုလေ့လာရာမှာ စာအုပ်တွေက ပိုပြီးတော့ အဆင်ပြေပါလိမ့်မယ်။ အဲဒီတော့မှ တချို့သော နည်းပညာတွေက ကိုယ်နဲ့အံခွင်ဝင်ကျဖြစ်၊ မဖြစ်ကို ချင့်ချိန် စဉ်းစားလို့ရနိုင်ပါလိမ့်မယ်။ မဟုတ်ဘဲနဲ့ သူများတွေ Microservice လုပ်လို့ လိုက်လုပ်တာက သိပ်အဆင်မပြေပါဘူး။
သို့သော် စာအုပ်က ခပ်သေးသေးဆိုတော့ အပ်ကျမတ်ကျ အသေးစိတ်တော့ မပါဘူးပေါ့။ ဒါပေမယ့် အလုပ်လုပ်စရာ လောလောလတ်လတ် ရှိတဲ့သူတွေ အမြန်ဖတ်ပြီး ပြင်စရာရှိတာမျိုး ပြန်ရေးရတာမျိုး ခပ်မြန်မြန် ဆုံးဖြတ်စရာ ရှိရင်တော့ ဒီစာအုပ်က အတော်လေး တာသွားပါတယ်။ စာအုပ်က ထုတ်တာ မကြာသေးသလို ရေးတဲ့သူ Brendan Burns ကလည်း Kubernetes ရဲ့ founder ဖြစ်သလို Microsoft မှာလည်း Engineer ဖြစ်ပါတယ်။ အဲဒီအတွက် ယုံကြည်စိတ်ချရတယ်လို့ ပြောလို့ရပါလိမ့်မယ်။ တစ်ခုရှိတာက သူ့အနေနဲ့ ဥပမာ တော်တော်များများက Kubernetes နဲ့ docker ကို အခြေခံပြီးရေးထားတာ ဖြစ်တဲ့အတွက် အဲဒီဟာနဲ့ ရင်းနှီးဖို့တော့ လိုပါတယ်။ အခမဲ့ စာအုပ် ဖြစ်ပြီးတော့ Microsoft Live Account ဖြစ်ဖြစ် Github Account ဖြစ်ဖြစ်ရှိရင် ဒီမှာ sign in ဝင်ပြီး download ရယူနိုင်ပါတယ်။ Distributed Data System တွေအကြောင်း အတွင်းကျကျ သိချင်ရင်တော့ ကိုလူပျိုညွန်းတဲ့ Designing Data-Intensive Applications ကို ဖတ်သင့်ပါတယ်။ အဲဒီစာအုပ်က ရှည်တော့ရှည်တယ်။
Image Credit
https://gago.io/wp-content/uploads/2018/09/designing-distributed-systems-book.jpg