Bosh sahifa Wiki Global load balancing

Global load balancing

Global load balancing — foydalanuvchi trafikini turli geografik region yoki data centerlardagi endpointlar orasida taqsimlash mexanizmi. U clientni yaqin, sog‘lom yoki siyosatga mos xizmat nusxasiga yo‘naltiradi va region uzilganda trafikni boshqa joyga ko‘chirishga yordam beradi.

Boshqaruv usullari

DNS-based balancing bir hostname uchun turli IP javoblarini location, latency, weight yoki health asosida beradi. U keng mos keladi, ammo resolver va client DNS javobini TTLdan uzoqroq cache qilishi mumkin. Shu sababli failover darhol barcha clientga yetmaydi.

Anycast bir IP prefiksini bir nechta joydan e’lon qiladi; routing clientni tarmoq nuqtai nazaridan yaqin site’ga olib boradi. Global proxy yoki edge load balancer TLS connectionni qabul qilib, application-level health va policy asosida backend regionni tanlashi mumkin. U tez boshqaruv beradi, lekin global control plane va backbone’ga bog‘liqlik yaratadi.

Routing siyosatlari

Latency routing o‘lchangan tarmoq kechikishiga, geolocation foydalanuvchi joyiga, weighted routing foiz taqsimotiga tayanadi. Priority yoki failover modeli primary sog‘lom bo‘lsa faqat uni tanlaydi. Data residency uchun ayrim davlat foydalanuvchisi faqat ruxsat etilgan regionga yuboriladi.

Eng yaqin region har doim eng tez application emas. Database boshqa regionda bo‘lsa local frontend cross-region query kutadi. Backend load, queue va dependency holati routing qaroriga qo‘shilishi mumkin.

Health check

Liveness endpoint process ishlayotganini, readiness esa requestni to‘liq bajara olishini ko‘rsatadi. Global health check regionning local load balanceri, database write va zarur dependencylarini tekshirishi mumkin. Juda chuqur check tashqi xizmatdagi qisqa xatoda barcha regionni noto‘g‘ri unhealthy qilishi mumkin; failure threshold va interval muvozanatlanadi.

Bir necha mustaqil probe location networkdagi local muammoni backend muammosidan ajratadi. Control plane health natijasi kechikishini routing RTOga qo‘shish kerak.

Session va state

Sticky session foydalanuvchini bitta regionga bog‘laydi, ammo region uzilganda session yo‘qolishi mumkin. Stateless token yoki regionlararo session store failoverni yengillashtiradi. Database single-writer bo‘lsa barcha regiondan write home regionga boradi yoki global router write requestni alohida yo‘naltiradi.

Retry vaqtida client ikki regionga bir operatsiyani yuborishi mumkin. Idempotency key duplicate buyurtma yoki to‘lovni cheklaydi. Global load balancer aynan-bir-marta bajarilishni o‘zi ta’minlamaydi.

TLS va xavfsizlik

TLS sertifikat edge’da yoki regional backendda tugatiladi. Private key tarqatilishi, rotation va supported cipher policy barcha point of presence’da bir xil boshqariladi. Origin faqat ishonchli global proxy manbalaridan trafik qabul qilishi va proxy identity’ni tekshirishi mumkin.

DDoS himoyasi trafik backendga yetishidan oldin global edge’da ishlaydi. Client IP forwarding headerlari faqat ishonchli proxy tomonidan yozilganda qabul qilinadi.

Kuzatuv

Metriclar DNS answer, chosen region, health transition, failover va per-region latency’ni ko‘rsatadi. Synthetic probe turli geografik nuqtadan ishlaydi. Weighted rolloutda haqiqiy request soni DNS cache va connection reuse sabab belgilangan foizdan farq qilishi mumkin; natija trafik logidan o‘lchanadi.

Fail-open va fail-closed

Barcha backend health checkdan yiqilsa global balancer oxirgi ma’lum endpointga trafik yuborishi yoki butunlay rad etishi mumkin. Fail-open eski, ammo qisman ishlaydigan xizmatni saqlaydi; fail-closed noto‘g‘ri yoki xavfli javobning oldini oladi. To‘lov va static content uchun tanlov bir xil bo‘lmasligi mumkin. Siyosat disasterdan oldin belgilanadi va mashqda tekshiriladi.

Bog‘liq tushunchalar

DNS routing, Anycast, Load balancer, Health check, Failover, Multi-region architecture, Geo-routing, DDoS protection