နားလည်ထားရမယ့် အချက်
PostgreSQL မှာ server process က data files ကိုပိုင်ဆိုင်ပြီး client များရဲ့ connection ကိုလက်ခံပါတယ်။ `psql`၊ application server သို့ GUI tool တို့က client ဖြစ်ကြပြီး SQL request ပို့ကာ result ပြန်ယူပါတယ်။ PostgreSQL စကားဝိုင်းထဲက “cluster” ဆိုတာ Kubernetes cluster မဟုတ်ဘဲ server instance တစ်ခုက စီမံသော database အစုကိုဆိုလိုပါတယ်။
လက်တွေ့ scenario နဲ့ ချိတ်ကြည့်မယ်
Browser က API ကိုခေါ်ပြီး API server က connection ဖြင့် PostgreSQL ကို query လုပ်တယ်လို့ စဉ်းစားပါ။ Browser က database port ကို တိုက်ရိုက်မဖွင့်သင့်ပါဘူး။ Authentication၊ validation နဲ့ authorization ကို application boundary မှာထားပြီး database ဘက်မှာလည်း role နှင့် constraints ဖြင့် ထပ်ကာကွယ်ရပါတယ်။
အတူတူ စမ်းရေးကြည့်မယ်
Browser
└─ HTTPS → Node.js API
└─ PostgreSQL connection → postgres server
├─ tutorial_platform
└─ postgresClient၊ server၊ connection၊ cluster နှင့် database တို့ကို ခွဲခြားနိုင်မည်။၅ မိနစ် စမ်းကြည့်
မိမိသုံးဖူးသော app တစ်ခုအတွက် browser → API → database data flow ကို မြှားများဖြင့်ရေးဆွဲပါ။
သတိလေးတစ်ချက်
Database cluster၊ database နဲ့ schema ကို အတူတူဟုမယူဆပါနှင့်—scope နှင့် permission boundary မတူပါ။
PostgreSQL — Architectural Fundamentals — PostgreSQL Global Development Group