GH GambleHub

Tenantlaryň izolýasiýasy we çäkleri

Tenantlaryň we çäkleriň izolýasiýasy köp tenant arhitekturasynyň esasyny düzýär. Maksat: bir kärendeçiniň hereketleri hiç haçan beýlekisiniň maglumatlaryna, howpsuzlygyna we SLO-syna täsir etmez we çeşmeler adalatly we öňünden aýdyp boljak paýlanar. Aşakda - maglumatlaryň derejesinden hasaplamalary meýilleşdirmäge we hadysalary dolandyrmaga çenli çözgütleriň amaly kartasy.

1) Howplaryň we maksatlaryň nusgasy

Howplar

Kärendeçileriň arasynda maglumatlaryň syzmagy (logiki/kesh arkaly/logi arkaly).
"Noisy neighbor": bir müşderiniň köpelmegi sebäpli öndürijiligiň pese gaçmagy.
Artykmaçlyklaryň güýçlenmegi (giriş syýasatynda ýalňyşlyk).
Billing-drift (ulanmagyň we hasaplamalaryň laýyk gelmezligi).
Kaskad şowsuzlyga çydamly ssenariýalar (biriniň hadysasy köpleriň aşak gaçmagyna getirýär).

Maksatlar

Maglumatlaryň we syrlaryň berk izolýasiýasy.
Per-tenant çäkleri/kwotalary we adalatly meýilleşdiriş.
Aç-açan audit, gözegçilik we billing.
Wakalary lokallaşdyrmak we çalt dikeldiş per tenant.

2) Izolýasiýa derejeleri (ahyrky model)

1. Maglumat

Açarlarda we indekslerde 'tenant _ id', Row-Level Security (RLS).
Şifrlemek: KMS iýerarhiýasy → kärendeçiniň açary (KEK) → maglumat açary (DEK).
Ýokary talaplar üçin aýratyn shemalar/BD (Silo), netijelilik üçin RLS bilen umumy klaster (Pool).
Retenşna syýasaty we "ýatdan çykarmak hukugy" per tenant, crypto-shredding açarlary.

2. Hasaplamalar

CPU/RAM/IO kwotalary, tenant üçin worker howuzlary, "deňagramly" nobatlar.
GC/heap izolýasiýasy (JVM/Runtime konteýnerleri/sazlamalary), parallelism çäkleri.
Per-tenant autoscaling + backpressure.

3. Tor

Segmentasiýa: private endpoints/VPC, ACL 'tenant _ id'.
Serhetdäki rate limiting we per-tenant connection caps.

DDoS/botlardan gorag

4. Amallar we amallar

Kärendeçi göçmeler, bellikler, DR, feature-flags.
Hadysalar - "mikro-blast-radius": 'tenant _ id' boýunça fýuzing.

3) Kireýine alyjynyň elýeterliligine we kontekstine gözegçilik etmek

AuthN: OIDC/SAML; bellikleri 'tenant _ id', 'org _ id', 'plan', 'scopes' göterýär.
AuthZ: RBAC/ABAC (rollar + taslamanyň, bölümiň, sebitiň atributlary).
Serhetdäki kontekst: API-şlýuz tenantyň kontekstini çykarýar we tassyklaýar, çäkler/kwotalar bilen doldurýar, treýslere ýazýar.
"Goşa gulplama" ýörelgesi: RLS hyzmatynda/DB syýasatynda barlag.

4) Maglumatlar: shemalar, nagt pul, ýazgylar

Shemalar:
  • Shared-schema (row-level): iň ýokary netijelilik, berk RLS hökmanydyr.
  • Per-schema: izolýasiýa/operasiýa barlyşygy.
  • Per-DB/cluster (Silo): VIP/düzgünleşdirilýänler üçin.

Kesiş: açar prefiksleri 'tenant: {id}:...', TTL meýilnama boýunça, cache-stampede (lock/early refresh) garşy gorag.

Girişler/meta-maglumatlar: PII-iň doly lakamlaşdyrylmagy, 'tenant _ id' boýunça süzgüçler, dürli kärendeçileriň ýazgylarynyň "ýelmeşmegini" gadagan etmek.

5) Traffigi we amallary çäklendirmek

Esasy mehanikler

Token Bucket: tekizlenen bökdençlikler, 'rate '/' burst' parametrleri.
Leaky Bucket: throughput.
Fixed Window/Sliding Window: wagt penjiresinde ýönekeý/takyk kwotalar.
Concurrency limits: caps bir wagtyň özünde soraglara/joblara.

Nirede ulanmaly

Serhetde (L7/API-şlýuz) - esasy gorag we "çalt şowsuzlyk".
Merkezde (hyzmatlarda/nobatlarda) - ikinji kontur we "fair share" üçin.

Syýasatlar

Tenant/meýilnama/endpoint/amal görnüşi boýunça (köpçülige açyk API, agyr eksportlar, administratiw hereketler).
Priority-aware: VIP has uly 'burst' we arbitra inda agram alýar.
Ygtybarly retraýalar üçin idempotency-keys.

Profilleriň mysaly (düşünjeler)

Starter: 50 req/s, burst 100, 2 paralel eksport.
Business: 200 req/s, burst 400, 5 eksport.
Enterprise/VIP: 1000 req/s, burst 2000, saýlanan workerler.

6) Kwotalar we adalatly meýilleşdiriş (fairness)

Çeşmeler boýunça kwotalar: ammar, obýektler, habarlar/min, tabşyryklar/sagat, nobatlaryň ululygy.
Weighted Fair Queuing/Deficit Round Robin: umumy workerlere "deňagramly" giriş.
Per-tenant worker pools: şowhunly/tankydy müşderiler üçin berk izolýasiýa.
Admission control: kwotalar gutarandan öň şowsuzlyk/pese gaçma.
Backoff + jitter: partlamalary sinhronlaşdyrmazlyk üçin eksponensial gijikdirmeler.

7) Gözegçilik we billing per tenant

Hökmany bellikler: 'tenant _ id', 'plan', 'region', 'endpoint', 'status'.
SLI/SLO per tenant: p95/p99 latency, error rate, availability, utilization, saturation.
Usage-metrikler: CPU amallary/baýtlary/sekundlary boýunça hasaplaýjylar → agregator → invoýslar.
Billingiň idempotentligi: serhetdäki snapshotlar, goşa hasapdan çykarylmakdan/wakalaryň ýitmeginden goramak.
Daşbordlar segmentlerde: VIP/düzgünleşdirilen/täze kärendeçiler.

8) "Kärendeçiler boýunça" hadysalar, zaýalanma we DR

'tenant _ id' boýunça fýuzing: galanlaryna täsir etmezden belli bir kärendeçiniň gyssagly ýapylmagy/trottling.
Graceful Degradation: read-only re modeim, "Sandbox" nobatlar, yza süýşürilen meseleler.
RTO/RPO per tenant: her meýilnama üçin dikeldiş we ýitgileriň maksatlaýyn bahalary.
Maşklar: şowhunly kärendeçini öçürmek we DR barlagy bilen yzygiderli "oýun günleri".

9) Talaplara laýyk gelmek (residency, gizlinlik)

Pinning tenanta sebite; sebitleýin akymlaryň anyk düzgünleri.
Açarlara/maglumatlara girmegiň barlagy, administratiw amallaryň žurnallaşdyrylmagy.
Maglumatlary retenşn we eksport dolandyryşy per tenant.

10) Mini-salgylanma: nädip bir ýere jemlemeli

Soragyň akymy

1. Edge (API-şlýuz): TLS → aýyrmak 'tenant _ id' → belgi tassyklamak → rate/quotas ulanmak → söwda etmek.
2. Polisiýa hereketlendirijisi: kontekst 'tenant _ id/plan/features' → ugry we çäkleri barada karar.
3. Hyzmat: Hukuklary barlamak + bellikler 'tenant _ id' → RLS aşagyndaky DB bilen işlemek → prefiks bilen keş.
4. Usage-ýygnamak: amallaryň/baýtlaryň hasaplaýjylary → agregator → billing.

Maglumat

Strategiýa boýunça shema/DB (row-level/per-schema/per-DB).
KMS: kärendeçi üçin açarlar, aýlaw, aýyrylanda crypto-shredding.

Hasaplamalar

Agramly nobatlar, per tenant, caps concurrency boýunça workerleriň pullary.
Per-tenant metriklere görä autoscaling.

11) Pseudo-syýasatlar (ugrukdyrmak üçin)

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) Azyk önüminden öň çek-sanawy

  • Ýeke-täk hakykat çeşmesi 'tenant _ id'; hemme ýerde zyňylýar we logotip edilýär.
  • RLS/ACL DB + hyzmat barlagy (goşa gulplama) derejesinde bar.
  • Şifrlemek açarlary per tenant, aýlaw/aýyrmak resminamalaşdyryldy (crypto-shredding).
  • Serhetdäki we içindäki çäklendirmeler/kwotalar; partlamalar we "burst" synagdan geçirildi.
  • Fair-queuing we/ýa-da VIP üçin saýlanan workerler; caps на concurrency.
  • Per-tenant SLO we alertler; segmentler boýunça daşbordlar.
  • Usage-ýygnamak idempotenten; billing bilen maglumat barlandy.
  • DR/hadysalar kärendeçiden öň lokallaşdyrylýar; 'tenant _ id' boýunça fýuzing işleýär.
  • Nagt pul/tölegler kärendeçiler boýunça bölünýär; PII gizlenendir.
  • Migrasiýa/bellikler/eksport proseduralary - kärende boýunça.

13) Adaty ýalňyşlyklar

RLS "hyzmat" ulanyjy tarapyndan öçürildi/ýapyldy - syzmak töwekgelçiligi.
Bitewi global limiter → "noisy neighbor" we SLO-nyň bozulmagy.
Prefikssiz umumy keşler/nobatlar → maglumatlaryň geçişi.
Billing, iň ýokary nokatlar bilen ýitýän ýazgylary sanaýar.
Kärendeçi fýuzingiň ýoklugy - kaskad ýykylmagy.
Kynçylykly 'tenant _ id' -ni aýak basmak mümkinçiligi bolmazdan "bir aýlawda" göçmek.

14) Strategiýany çalt saýlamak

Düzgünleşdirilen/VIP: Silo-data (per-DB), bölünip berlen workerler, berk kwotalar we residency.
Köpçülikleýin SaaS: Shared-schema + RLS, serhetdäki güýçli çäkler, içinde fair-queuing.
"Şowhunly/titremeli" ýük: uly 'burst' + gaty concurrency-caps, backpressure we meýilnamalar boýunça ileri tutulýan ugurlar.

Netije

Tenantlaryň we çäkleriň izolýasiýasy serhetlere we adalata degişlidir. Yığını, RLS we maglumatlary şifrlemek, serhetde we özende çäklendirmek we kwotalar, adalatly meýilleşdiriji, hadysalara syn etmek we lokalizasiýa etmek arkaly aýdyň 'tenant _ id' - bularyň hemmesi bilelikde platformanyň agressiw ösmegi bilen hem her bir kärendeçi üçin howpsuzlygy, öňünden aýdyp boljak hilini we aç-açan billing berýär.

Contact

Biziň bilen habarlaşyň

Islendik sorag ýa-da goldaw boýunça bize ýazyp bilersiňiz.Biz hemişe kömek etmäge taýýar.

Integrasiýany başlamak

Email — hökmany. Telegram ýa-da WhatsApp — islege görä.

Adyňyz obýýektiw däl / islege görä
Email obýýektiw däl / islege görä
Tema obýýektiw däl / islege görä
Habar obýýektiw däl / islege görä
Telegram obýýektiw däl / islege görä
@
Eger Telegram görkezen bolsaňyz — Email-den daşary şol ýerden hem jogap bereris.
WhatsApp obýýektiw däl / islege görä
Format: ýurduň kody we belgi (meselem, +993XXXXXXXX).

Düwmäni basmak bilen siz maglumatlaryňyzyň işlenmegine razylyk berýärsiňiz.