Thuta Learning
Cloud & Deployment
BasicDevOps & Toolsbeginner

Hosting အမျိုးအစားများ

ဒီခန်းပြီးရင် ဘာတတ်သွားမလဲ

  • Hosting အမျိုးအစားများ concept ကို နားလည်ရှင်းပြနိုင်ရန်
  • Diagram ကို ဖတ်ပြီး architecture ထဲမှာ request/data ဘယ်လိုစီးဆင်းသလဲ ခြေရာခံနိုင်ရန်
  • ကိုယ့် project အတွက် ဘယ်လို ဆုံးဖြတ်သင့်သလဲ ရှင်းပြနိုင်ရန်

နားလည်ထားရမယ့် အချက်

ကိုယ့် app ကို deploy လုပ်ရမယ်ဆိုတာ သိပြီဆိုရင် နောက်မေးခွန်းက ဘယ်နေရာမှာ ဆိုတာပါ။ Hosting ဆိုတာ convenience ကို control နဲ့ ပြန်လဲတဲ့ category spectrum တစ်ခုပါ။

  • Static / Managed platforms (Netlify, Vercel, GitHub Pages) — almost အလုံးစုံ ကိုင်တွယ်ပေးပြီး control အနည်းငယ်
  • Serverless (AWS Lambda, Google Cloud Functions) — server manage မလုပ်ရ၊ usage အလိုက်ပဲ charge
  • Containers (AWS ECS, Google Cloud Run) — ဘယ်နေရာမှာမဆို ကိုက်ညီစွာ run၊ runtime control ပိုရ
  • VPS (virtual private server) — OS access အပြည့်၊ control အမြင့်ဆုံး၊ တာဝန်လည်း အများဆုံး
  • Shared hosting — customer အများစု server တစ်ခုတည်းပေါ်၊ ဈေးသက်သာ၊ control ကန့်သတ်

ဒီ category ဘယ်ခုမှ universally အကောင်းဆုံး မဟုတ်ပါ။ Personal blog သေးသေးလေးနဲ့ multi-service backend ကြီးတစ်ခုမှာ လိုအပ်ချက် လုံးဝ ကွဲပြားပြီး၊ ဒီ course ရဲ့ နောက်ပိုင်း lesson များနဲ့ project များက ရွေးချယ်ပုံကို သင်ပေးပါလိမ့်မယ်။

text
HOSTING CATEGORIES: MANAGED VS CONTROL
--------------------------------------
 MOST MANAGED                                    MOST CONTROL
 LEAST CONTROL  <-----------------------------> LEAST MANAGED

 Static/Managed    Serverless    Containers    VPS (full OS)
 (Netlify, Vercel,  (Lambda,     (ECS, Cloud   (EC2, Droplet)
  GitHub Pages)      Functions)   Run)

လက်တွေ့ scenario နဲ့ ချိတ်ကြည့်မယ်

အောက်က recommendHosting function ဟာ toy decision-maker တစ်ခုသာ ဖြစ်ပြီး၊ တကယ့်ဘဝမှာ မျက်စိမှိတ် လိုက်နာစရာ rule မဟုတ်ပါဘူး — ဒါပေမယ့် hosting category ရွေးချယ်ခြင်းရဲ့ essence ကို ဖမ်းယူထားပါတယ်။ Project တစ်ခုအကြောင်း yes-or-no fact သုံးခု — backend code ရှိသလား၊ operating system ကို control အပြည့် လိုသလား၊ team က ongoing operations work အနည်းဆုံးလိုချင်သလား — ကို ယူပြီး recommended category တစ်ခု ပြန်ပေးပါတယ်။ Backend code လုံးဝ မရှိတဲ့ portfolio site လို project က static hosting ရပါတယ် — server-side code run စရာ မလိုလို့ပါ။

Custom game server လို operating system control အပြည့် လိုအပ်တဲ့ project ကတော့ VPS ရပါတယ်။ ကျန်တဲ့ ops work အနည်းဆုံး လိုချင်တာက serverless ရပြီး၊ မဟုတ်ရင် container hosting ဆီ ပြန်ကျပါတယ်။

Project ဥပမာသုံးခုနဲ့ run ကြည့်တာက ကွဲပြားပေမယ့် ယုတ္တိတန်တဲ့ အဖြေသုံးခုကို ပြပါတယ်။ ဒါက တမင် ရိုးရှင်းအောင် ဆောက်ထားတာဆိုတာ သတိရပါ — real decision တွေမှာ cost, team experience, expected traffic, project ကြီးထွားနိုင်ပုံ တို့ကိုလည်း ထည့်တွက်ရပါလိမ့်မယ် — ဒါက ဒီ site ပေါ်က ပိုအဆင့်မြင့်တဲ့ material တွေရဲ့ ရည်ရွယ်ချက်ပါပဲ။

Hosting Category Cheat-Check

အတူတူ စမ်းရေးကြည့်မယ်

javascript
function recommendHosting({ hasBackend, needsFullControl, wantsMinimalOps }) {
  if (!hasBackend) return "static hosting";
  if (needsFullControl) return "VPS";
  if (wantsMinimalOps) return "serverless";
  return "container hosting";
}

const projects = [
  { name: "Portfolio site", hasBackend: false, needsFullControl: false, wantsMinimalOps: true },
  { name: "Custom game server", hasBackend: true, needsFullControl: true, wantsMinimalOps: false },
  { name: "Small API backend", hasBackend: true, needsFullControl: false, wantsMinimalOps: true }
];

for (const p of projects) {
  const { name, ...needs } = p;
  console.log(`${name} -> ${recommendHosting(needs)}`);
}
You should see
Portfolio site -> static hosting
Custom game server -> VPS
Small API backend -> serverless

၅ မိနစ် စမ်းကြည့်

projects array ထဲကို hasBackend: true, needsFullControl: false, wantsMinimalOps: false ဆိုတဲ့ project အသစ်တစ်ခု ထပ်ထည့်ပါ — recommendHosting() က "container hosting" fallback ကို return ပြန်ပေးတာကို confirm လုပ်ပါ။

သတိလေးတစ်ချက်

Hosting category တစ်ခုတည်းကို project အားလုံးအတွက် universally အကောင်းဆုံးလို့ ယူဆမိခြင်း

Cost, team experience, project ကြီးထွားနိုင်ပုံကို လျစ်လျူရှုပြီး technical fit တစ်ခုတည်းအပေါ်သာ အခြေခံ ဆုံးဖြတ်ခြင်း

Wikipedia: Web hosting serviceCloud & Deployment

ဒီနေရာမှာ လူအများမှားတတ်တယ်

  • Hosting category တစ်ခုတည်းကို project အားလုံးအတွက် universally အကောင်းဆုံးလို့ ယူဆမိခြင်း
  • Cost, team experience, project ကြီးထွားနိုင်ပုံကို လျစ်လျူရှုပြီး technical fit တစ်ခုတည်းအပေါ်သာ အခြေခံ ဆုံးဖြတ်ခြင်း
  • Localhost မှာ အလုပ်လုပ်တာနဲ့ Production မှာ အလိုအလျောက်အလုပ်လုပ်မယ်လို့ မယူဆပါနှင့် — environment, network, database, security ကွာခြားချက်တွေ ရှိနိုင်ပါတယ်။

လေ့ကျင့်ခန်း

projects array ထဲကို hasBackend: true, needsFullControl: false, wantsMinimalOps: false ဆိုတဲ့ project အသစ်တစ်ခု ထပ်ထည့်ပါ — recommendHosting() က "container hosting" fallback ကို return ပြန်ပေးတာကို confirm လုပ်ပါ။

You'll know it worked when: Portfolio site -> static hosting Custom game server -> VPS Small API backend -> serverless

Hosting အမျိုးအစားများ | Thuta Learning