လွယ်လွယ်ပြောရရင် Spot Instance ဆိုတာ Cloud Company တွေမှာ လူမသုံးဘဲ ပိုနေတဲ့ Server တွေကို ဈေးအရမ်းလျှော့ပြီး ဌားပေးတဲ့ နည်းလမ်းပါ။ ပုံမှန်ဈေးထက် 70% ကနေ 90% အထိ သက်သာနိုင်ပါတယ်။ ဒါပေမယ့် တစ်ချက်ရှိတယ် — တခြားသူက လိုအပ်လာရင် သင့်ဆီက Server ကို ပြန်ယူသွားနိုင်ပါတယ်။

ကျွန်တော် ဒါကို လေယာဉ်လက်မှတ် လျှော့ဈေးနဲ့ ဥပမာပေးချင်တယ်။ လေယာဉ်ထွက်ခါနီးမှာ ထိုင်ခုံတွေ လွတ်နေသေးရင် လေကြောင်းလိုင်းက ဈေးလျှော့ပြီး ရောင်းပါတယ်။ ဈေးသက်သာပေမယ့် အာမခံချက် မရှိပါဘူး။ ပုံမှန်ဈေးပေးဝယ်တဲ့သူ ရောက်လာရင် သင့်ထိုင်ခုံကို ပေးလိုက်ရနိုင်ပါတယ်။ Spot Instance လည်း အတူတူပါပဲ။ ပိုနေတဲ့ Server ကို ဈေးလျှော့ပြီး သုံးရပေမယ့် လိုအပ်တဲ့သူ ရောက်လာရင် ပြန်ပေးရပါတယ်။

Spot Instance က ဘာလို့ ဒီလောက်ဈေးသက်သာတာလဲ?

Cloud Company တွေဖြစ်တဲ့ AWS, Google Cloud, Azure တို့မှာ Server ထောင်ပေါင်းများစွာ ရှိပါတယ်။ ဒါပေမယ့် အချိန်တိုင်း Server အားလုံး အသုံးပြုနေတာ မဟုတ်ပါဘူး။ ညနက်ပိုင်းလို လူသုံးနည်းတဲ့အချိန်မှာ Server တွေ အများကြီး အားနေပါတယ်။ အားနေတဲ့ Server က Company အတွက် အရှုံးပါ။ မီးပူပြီး ဖွင့်ထားရတာချင်းအတူတူ ပိုက်ဆံမရဘဲ နေနေတာပါ။

ဒါကြောင့် Company တွေက “ပိုနေတဲ့ Server ကို ဈေးလျှော့ပြီး ပေးမယ်၊ ဒါပေမယ့် လိုအပ်လာရင် ပြန်ယူမယ်” လို့ ကမ်းလှမ်းပါတယ်။ ဒါက နှစ်ဦးနှစ်ဖက် အကျိုးရှိပါတယ်။ Company က ပိုနေတဲ့ Server ကနေ ပိုက်ဆံရတယ်။ သုံးစွဲသူက Server ကို ဈေးသက်သာသက်သာနဲ့ ရတယ်။ AWS မှာ Spot Instance၊ Google Cloud မှာ Preemptible VM၊ Azure မှာ Spot VM လို့ ခေါ်ပါတယ်။ နာမည်ချင်း မတူပေမယ့် အလုပ်လုပ်ပုံက အတူတူပါပဲ။

ဘယ်အချိန်မှာ Spot Instance သုံးသင့်လဲ?

Spot Instance က အလုပ်တိုင်းနဲ့ မကိုက်ပါဘူး။ ကိုက်တဲ့အလုပ်နဲ့ မကိုက်တဲ့အလုပ်ကို ခွဲခြားသိဖို့ အရေးကြီးပါတယ်။

သုံးသင့်တဲ့အလုပ်တွေ —

Batch Job — ဓာတ်ပုံထောင်ချီကို တစ်ပြိုင်နက် ပြုပြင်တာ၊ Data အများကြီးကို ခွဲခြမ်းစိတ်ဖြာတာ၊ Video Render လုပ်တာ။ အချိန်အကန့်အသတ် မရှိဘူး၊ ကြားမှာ ရပ်သွားလည်း ပြန်စလို့ရတယ်။
CI/CD Testing — Code Push လုပ်တိုင်း Test ပြေးတာ။ Test တစ်သုတ် ရပ်သွားရင် နောက်တစ်ခါ ပြန်ပြေးလို့ရတယ်။
AI Training — Model ကို Train တဲ့အခါ Checkpoint သိမ်းထားရင် Server ရပ်သွားလည်း ဆက်လက်သင်လို့ရတယ်။
Stateless Worker — တစ်ခုပြီးတစ်ခု အလုပ်လုပ်တဲ့ Worker တွေ။ တစ်ကောင် သေသွားလည်း တခြားကောင် အစားထိုးနိုင်တယ်။

မသုံးသင့်တဲ့အလုပ်တွေ —

Database — Database Server က ရပ်သွားရင် Data ပျောက်နိုင်တယ်။ ဘယ်တော့မှ Spot နဲ့ မသုံးပါနဲ့။
Website အဓိက Server — သင့်ရဲ့ Website က 24 နာရီ ပတ်လုံး တက်နေရမယ်။ Spot Server က ရပ်သွားရင် Website ကျသွားမယ်။
အချိန်အကန့်အသတ် တင်းကျပ်တဲ့ အလုပ် — တစ်နာရီအတွင်း ပြီးရမယ့် အလုပ်ကို Spot နဲ့ လုပ်ရင် Server ပြန်ယူခံရလို့ မပြီးနိုင်ဘူး။

Server ပြန်ယူခံရရင် ဘာဖြစ်မလဲ?

Cloud Company က Server ပြန်ယူခင် 2 မိနစ်အလိုမှာ သတိပေးပါတယ်။ AWS မှာ 2 မိနစ်စာ သတိပေးချက်ရတယ်။ Google Cloud မှာ 30 စက္ကန့်ပဲ ရပါတယ်။ အချိန်တိုတိုလေးပါ။ ဒါကြောင့် Spot Instance သုံးတဲ့အခါ ဒီအချက်တွေကို ပြင်ဆင်ထားရပါတယ်။

Checkpoint သိမ်းပါ — အလုပ်လုပ်နေရင်း တိုးတက်မှုကို ခဏခဏ သိမ်းထားပါ။ Server ရပ်သွားလည်း သိမ်းထားတဲ့နေရာကနေ ပြန်စလို့ရတယ်။
Stateless ဖြစ်အောင်လုပ်ပါ — Server ထဲမှာ အရေးကြီးတဲ့ Data မသိမ်းထားပါနဲ့။ Data ကို S3 လို တခြားနေရာမှာ သိမ်းပါ။ Server အသစ်တက်လာရင် Data ကို အဲဒီကနေ ပြန်ဆွဲယူလို့ရတယ်။
Auto Scaling နဲ့ တွဲသုံးပါ — Spot Server တစ်လုံး သေသွားရင် နောက်တစ်လုံး အလိုလို တက်လာအောင် စီစဉ်ထားပါ။

ပုံမှန် Server နဲ့ ဈေးဘယ်လောက်ကွာလဲ?

ဥပမာ တစ်ခုနဲ့ တွက်ကြည့်ရအောင်။ ပုံမှန် Server တစ်လုံးကို တစ်နာရီ 10 ဒေါ်လာ ပေးရတယ်ဆိုပါစို့။ Spot Instance နဲ့ဆိုရင် တစ်နာရီ 1 ဒေါ်လာကနေ 3 ဒေါ်လာပဲ ကျသင့်နိုင်ပါတယ်။ တစ်လကို တွက်ကြည့်ရင် ဒေါ်လာ ထောင်ချီ သက်သာပါတယ်။ ဒါကြောင့် Startup တွေနဲ့ ကျောင်းသားတွေက AI Train လုပ်တာ၊ Data ခွဲခြမ်းစိတ်ဖြာတာတွေကို Spot Instance နဲ့ လုပ်လေ့ရှိပါတယ်။

ဒါပေမယ့် ဈေးက အမြဲတမ်း တူညီမနေပါဘူး။ လူသုံးများတဲ့အချိန်မှာ Spot ဈေးက တက်လာပြီး ပုံမှန်ဈေးနဲ့ နီးသွားတတ်ပါတယ်။ လူသုံးနည်းတဲ့အချိန်မှာ အရမ်းလျှော့ပါတယ်။ ဈေးက ဝယ်လိုအားနဲ့ ရောင်းလိုအားပေါ် မူတည်ပြီး ပြောင်းလဲနေပါတယ်။ တချို့ Company တွေက Spot ဈေးကို အမြဲစောင့်ကြည့်ပြီး ဈေးသက်သာတဲ့အချိန်မှ အလုပ်တွေကို ပြေးလေ့ရှိပါတယ်။

ဘယ်သူ့အတွက် အကောင်းဆုံးလဲ?

Spot Instance က ပိုက်ဆံချွေတာချင်ပြီး အလုပ်ရပ်သွားတာကို ခံနိုင်တဲ့ သူတွေအတွက် အကောင်းဆုံးပါ။ ကျောင်းသားတစ်ယောက်က AI Model ကို Train ချင်တယ်၊ ဘတ်ဂျက်နည်းတယ် ဆိုရင် Spot Instance က အဖြေပါ။ Startup တစ်ခုက Data အများကြီးကို ညဘက်မှာ ပြုပြင်ချင်တယ် ဆိုရင်လည်း Spot က သင့်တော်ပါတယ်။

ဒါပေမယ့် သင့်ရဲ့ Website, Database, ဖောက်သည်တွေနဲ့ တိုက်ရိုက်ထိတွေ့တဲ့ Service တွေအတွက်တော့ On-Demand ဒါမှမဟုတ် Reserved Instance ကို သုံးပါ။ ဈေးသက်သာတာက ကောင်းပေမယ့် ဖောက်သည်ရှေ့မှာ Service ကျသွားတာထက် ပိုဆိုးတာ မရှိပါဘူး။ လျှော့ဈေးနဲ့ ရတိုင်း အရာတိုင်း တန်တာ မဟုတ်ပါဘူး။ ဘယ်အလုပ်အတွက် ဘယ် Server မျိုး သုံးရမလဲဆိုတာ သိထားရင် Cloud ဘေလ်ကို ထက်ဝက်ကျော် လျှော့ချနိုင်ပါတယ်။ 🙂

—

Avatar photo
Min SiThu
@itsmeminsithu

Software Engineer & Tech Content Creator

View all posts