GH GambleHub

Tenantlarni izolyatsiya qilish va limitlar

Tenantlar va limitlarni izolyatsiya qilish ko’p tenant arxitekturaning poydevoridir. Maqsad: bir ijarachining xatti-harakatlari hech qachon ikkinchisining ma’lumotlari, xavfsizligi va SLOlariga ta’sir qilmasligi, resurslar esa adolatli va oldindan aytib bo’ladigan tarzda taqsimlanishi. Quyida - ma’lumotlar darajasidan hisoblash va hodisa-menejmentni rejalashtirishgacha bo’lgan amaliy yechimlar xaritasi.

1) Tahdidlar va maqsadlar modeli

Tahdidlar

Ijarachilar o’rtasida ma’lumotlar tarqalishi (loglar orqali mantiqiy/kesh).
«Noisy neighbor»: bitta mijozning o’sishi tufayli unumdorlikning buzilishi.
Imtiyozlarning kuchayishi (kirish siyosatida xatolik).
Billing-drift (foydalanish va hisoblashlarning nomuvofiqligi).
Kaskadga chidamli stsenariylar (bitta hodisa ko’pchilikni olib keladi).

Maqsadlar

Ma’lumotlar va sirlarni qat’iy izolyatsiya qilish.
Per-tenant limitlar/kvotalar va adolatli rejalashtirish.
Shaffof audit, kuzatuv va billing.
Hodisalarni mahalliylashtirish va per tenant tezda tiklash.

2) Izolyatsiya darajalari (uzluksiz model)

1. Maʼlumotlar

’tenant _ id’, Row-Level Security (RLS).
Shifrlash: KMS ierarxiyasi → ijarachi kaliti (KEK) → maʼlumotlar kaliti (DEK).
Yuqori talablarda alohida sxemalar/BD (Silo), samaradorlik uchun RLS bilan umumiy klaster (Pool).
Retenshn siyosati va «unutish huquqi» per tenant, crypto-shredding kalitlari.

2. Hisoblash

CPU/RAM/IO kvotalari, tenant uchun vorker pullari, «tortilgan» navbatlar.
GC/heap izolyatsiyasi (konteynerlar/JVM/Runtime sozlamalari), parallelism limitlari.
Pertenant autoscaling + backpressure.

3. Tarmoq

Segmentatsiya: private endpoints/VPC, ACL po’tenant _ id’.
Chegarada rate limiting va per-tenant connection caps.
Reja/ustuvorlikni hisobga olgan holda DDoS/botlar himoyasi.

4. Operatsiyalar va jarayonlar

Poarendator migratsiyasi, bekaplar, DR, feature-flags.
Hodisalar - «mikro-blast radius»: fyuzing bo’yicha’tenant _ id’.

3) Foydalanishni nazorat qilish va ijarachining konteksti

AuthN: OIDC/SAML; tokenlar’tenant _ id’,’org _ id’,’plan’,’scopes’.
AuthZ: RBAC/ABAC (rollar + loyiha, bo’lim, mintaqa atributlari).
Chegaradagi kontekst: API-shlyuz tenant kontekstini chiqaradi va validatsiya qiladi, limitlar/kvotalar bilan to’ldiradi, treyslarga yozadi.
«Ikki qulf» tamoyili: servisda + RLS/DB siyosatini tekshirish.

4) Ma’lumotlar: sxemalar, kesh, loglar

Sxemalar:
  • Shared-schema (row-level): maksimal samaradorlik, qat’iy RLS majburiy.
  • Per-schema: izolyatsiya/operativlik murosasi.
  • Per-DB/cluster (Silo): VIP/tartibga solinadiganlar uchun.

Kesh: kalit prefikslari’tenant: {id}:...’, reja boʻyicha TTL, cache-stampede (lock/early refresh) dan himoya qilish.

Logi/meta ma’lumotlar: PIIni to’liq taxalluslashtirish,’tenant _ id’bo’yicha filtrlar, turli ijarachilarning loglarini «yopishtirish» taqiqlanadi.

5) Trafik va operatsiyalarni limitlash

Tayanch mexaniklar

Token Bucket: tekislangan portlashlar, parametrlash’rate ’/’ burst’.
Leaky Bucket: throughput barqarorlashuvi.
Fixed Window/Sliding Window: Vaqt oynasi boʻyicha oddiy/aniq kvotalar.
Concurrency limits: caps bir vaqtning oʻzida soʻrovlar/joblar uchun.

Qayerda qo’llash kerak

Chegarada (L7/API-shlyuz) - asosiy himoya va «tezkor rad etish».
Markazda (servislarda/navbatlarda) - ikkinchi kontur va «fair share» uchun.

Siyosat

Tenant/reja/endpoint/operatsiya turi bo’yicha (ommaviy API, og’ir eksportlar, ma’muriy harakatlar).
Priority-aware: VIP arbitrajda katta’burst’va og’irlik oladi.
Xavfsiz retrajlar uchun idempotency-keys.

Profillar (tushunchalar) namunasi

Starter: 50 req/s, burst 100, 2 parallel eksport.
Business: 200 req/s, burst 400, 5 eksport.
Enterprise/VIP: 1000 req/s, burst 2000, ajratilgan vorkerlar.

6) Kvotalar va adolatli rejalashtirish (fairness)

Resurslar bo’yicha kvotalar: ombor, obyektlar, xabarlar/min, topshiriqlar/soat, navbatlar miqdori.
Weighted Fair Queuing/Deficit Round Robin: umumiy mashg’ulotlarga «muvozanatli» kirish.
Per-tenant worker pools: shovqinli/tanqidiy mijozlar uchun qattiq izolyatsiya.
Admission control: kvotalar tugagunga qadar muvaffaqiyatsiz/tanazzul.
Backoff + jitter: portlashlarni sinxronlashtirmaslik uchun eksponensial kechikishlar.

7) Kuzatish va billing per tenant

Majburiy teglar:’tenant _ id’,’plan’,’region’,’endpoint’,’status’.
SLI/SLO per tenant: p95/p99 latency, error rate, availability, utilization, saturation.
Usage-metriklar: CPU operatsiyalari/baytlari/sekundlari bo’yicha hisoblagichlar → agregator → invoyslar.
Billingning idempotentligi: chegaradagi snapshotlar, ikki marta hisobdan chiqarish/hodisalarni yo’qotishdan himoya qilish.
Dashbordlar segmentlarda: VIP/tartibga solinadigan/yangi ijarachilar.

8) Noxush hodisalar, degradatsiya va «ijarachilar bo’yicha» DR

Fyuzing bo’yicha’tenant _ id’: aniq ijarachini boshqalarga ta’sir qilmasdan avariya holatida uzib qo’yish/trottling.
Graceful Degradation: read-only rejimi, qum qutisidagi navbatlar, kechiktirilgan vazifalar.
RTO/RPO per tenant: har bir reja uchun maqsadli tiklash va yoʻqotish qiymatlari.
Mashqlar: shovqinli ijarachini o’chirish va DR tekshirish bilan muntazam «game days».

9) Talablarga muvofiqlik (residency, maxfiylik)

Pinning tenanta mintaqaga; kross-mintaqaviy oqimlarning aniq qoidalari.
Kalit/ma’lumotlardan foydalanish auditi, ma’muriy operatsiyalarni jurnallashtirish.
per tenant maʼlumotlarining retenshni va eksportini boshqarish.

10) Mini-referens: qanday qilib yig’ish kerak

Soʻrov oqimi

1. Edge (API-shlyuz): TLS → olish’tenant _ id’→ token validatsiyasi → rate/quotas qo’llash → treyslarni qo’yish.
2. Politsi-dvigatel: kontekst’tenant _ id/plan/features’→ yo’nalish va limitlar to’g "risidagi qaror.
3. Xizmat: huquqlarni tekshirish +’tenant _ id’→ DB bilan RLS ostida ishlash → prefiksli kesh.
4. Usage-yig’ish: operatsiyalar/baytlar hisoblagichlari → agregator → billing.

Maʼlumotlar

Strategiya bo’yicha sxema/DB (row-level/per-schema/per-DB).
KMS: ijarachiga kalitlar, rotatsiya, olib tashlashda crypto-shredding.

Hisoblash

Tarozilar bilan navbatlar, per tenant vorkerlar pullari, concurrency bo’yicha caps.
Per-tenant metriklar bo’yicha autoscaling.

11) Soxta siyosat (yo’naltirish uchun)

yaml limits:
starter:
req_per_sec: 50 burst: 100 concurrency: 20 exports_parallel: 2 business:
req_per_sec: 200 burst: 400 concurrency: 100 exports_parallel: 5 enterprise:
req_per_sec: 1000 burst: 2000 concurrency: 500 exports_parallel: 20

quotas:
objects_max: { starter: 1_000_000, business: 20_000_000, enterprise: 100_000_000 }
storage_gb: { starter: 100,   business: 1000,    enterprise: 10000 }

12) Oziq-ovqat mahsulotlari oldidagi chek-varaq

  • Yagona haqiqat manbai’tenant _ id’; Hamma joyga tashlanadi va logotip qilinadi.
  • RLS/ACL DB + Service Control (ikki tomonlama qulf) darajasida yoqilgan.
  • Shifrlash kalitlari per tenant, rotatsiya/oʻchirish (crypto-shredding) hujjatlashtirilgan.
  • Chegara va ichki limitlar/kvotalar; portlashlar va «burst» sinovdan o’tkazildi.
  • Fair-queuing va/yoki VIP uchun ajratilgan vorkerlar; caps на concurrency.
  • Per-tenant SLO va alertlar; segmentlar bo’yicha dashbordlar.
  • Usage-yig’im idempotenten; billing bilan ma’lumot tekshirildi.
  • DR/hodisalar ijarachidan oldin mahalliylashtiriladi; fyuzing’tenant _ id’ni ishlab chiqadi.
  • Kesh/loglar ijarachilar bo’yicha bo’lingan; PII niqoblangan.
  • Migratsiya/backap/eksport tartib-taomillari - ijarachi.

13) Tipik xatolar

RLS «xizmat» foydalanuvchisi tomonidan o’chirilgan/o’chirilgan - sizib chiqish xavfi.
Yagona global limiter → «noisy neighbor» va SLO buzilishi.
Prefikssiz umumiy kesh/navbatlar → maʼlumotlar kesishishi.
Billing cho’qqilarda yo’qoladigan o’rmonlarni sanaydi.
Ijarachi fyuzing yo’qligi - kaskadli pasayishlar.
Muammoli’tenant _ id’ni to’xtash imkoniyati bo’lmagan holda «bir marta» migratsiya qilish.

14) Strategiyani tez tanlash

Tartibga solinadigan/VIP: Silo-data (per-DB), ajratilgan vorkerlar, qat’iy kvotalar va residency.
Ommaviy SaaS: Shared-schema + RLS, chegarada kuchli limitlar, ichkarida fair-queuing.
Shovqinli/pulsatsiyali yuk: katta’burst’+ qattiq concurrency-caps, backpressure va rejalar bo’yicha ustuvorliklar.

Xulosa

Tenant va limitlarni izolyatsiya qilish - bu chegaralar va adolat haqida. Stek orqali aniq’tenant _ id’, RLS va maʼlumotlarni shifrlash, chegarada va oʻzagida limitlash va kvotalar, adolatli rejalashtiruvchi, hodisalarni kuzatish va mahalliylashtirish - bularning barchasi, hatto platforma agressiv oʻsgan taqdirda ham, har bir ijarachi uchun xavfsizlik, bashorat qilinadigan sifat va shaffof billing beradi.

Contact

Biz bilan bog‘laning

Har qanday savol yoki yordam bo‘yicha bizga murojaat qiling.Doimo yordam berishga tayyormiz.

Integratsiyani boshlash

Email — majburiy. Telegram yoki WhatsApp — ixtiyoriy.

Ismingiz ixtiyoriy
Email ixtiyoriy
Mavzu ixtiyoriy
Xabar ixtiyoriy
Telegram ixtiyoriy
@
Agar Telegram qoldirilgan bo‘lsa — javob Email bilan birga o‘sha yerga ham yuboriladi.
WhatsApp ixtiyoriy
Format: mamlakat kodi va raqam (masalan, +998XXXXXXXX).

Yuborish orqali ma'lumotlaringiz qayta ishlanishiga rozilik bildirasiz.