GH GambleHub

Köp tenant ýadro

Multi-tenant ýadro - kepillendirilen izolýasiýa, dolandyrylýan çäkler we ygtybarly kastomizasiýa ýagdaýynda umumy çeşmelerde köp garaşsyz müşderilere (tenantlara) hyzmat edýän platformanyň/önümiň esasy gatlagy. Gowy dizaýn edilen ýadro TCO-ny peseldýär, onbordingini çaltlaşdyrýar, çykarylyşyny ýönekeýleşdirýär we her bir kärendeçi üçin öňünden aýdyp boljak hilini üpjün edýär.

1) Kärendeçiniň modeli we izolýasiýa çäkleri

Kesgitnamalar

Tenant (Tenant/Org/Account): öz ulanyjylary, maglumatlary, syýasatlary we çäkleri bolan logiki gurama.
Izolýasiýa: bir kärendeçiniň beýlekisiniň maglumatlaryna, öndürijiligine we howpsuzlygyna täsiriniň öňüni almak ukyby.

Izolýasiýa derejeleri

1. Maglumatlar: aýry-aýry DB/shemalar/tablisalar, "kärendeçiniň açary" bilen şifrlemek, 'tenant _ id' süzgüçleri.
2. Hasaplamalar: CPU/RAM/IO kwotalary, tenant üçin worker howuzy ýa-da "deňagramly" nobatlar.
3. Tor: segmentasiýa, hususy endpoints/VPN, kärendeçiler üçin rugsatnamalaryň sanawy.
4. Amallar: migrasiýa, ekaplar, DR we "bir kärendeçä" täsir ediş çäkleri bilen hadysalar.

Köptenantlyk patternleri

Silo (gaty izolýasiýa): tenant üçin aýratyn toparlar/BD. Iň ýokary howpsuzlyk, ýokary baha.
Pool (umumy çeşmeler): logiki izolirlenen umumy infrastruktura; has gowy netijelilik, has ýokary töwekgelçilik "noisy neighbor".
Bridge/Hybrid: gibrid - VIP/düzgünleşdirilen müşderiler üçin umumy dolandyryş tekizligi + saýlama "silo".

2) Kärende haýyşlaryny kesgitlemek we ugrukdyrmak

Kärendeçiniň rugsady (Tenant Resolution)

'https : //{ tenant} .example. com`

Ýolda: '/t/{ tenant }/... '

Sözbaşy boýunça: 'X-Tenant-Id', 'X-Org' (goly barlamak)

Belgi boýunça: 'tenant _ id', 'org _ id', 'plan', 'scopes'

Marşrut

L7-şlýuz (API-şlýuz/Ingress) 'tenant _ id' -ni çykarýar, konteksti baýlaşdyrýar ('plan', çäkler, sebit), treýslere/ýazgylara ýazýar.
Funksional hyzmatlar "diňe okamak üçin" kontekstini kabul edýär; ýol we çäk boýunça çözgütleri geýtweý/polis- hereketlendiriji kabul edýär.

3) Maglumatlar we shemalar: strategiýalar

Saklamak wariantlary

Shared-shema, row-level: tablisalaryň bir toplumy, 'tenant _ id' meýdany, berk RLS (Row-Level Security).
Shared-DB, per-schema: bir DBMS, tenant üçin aýratyn shema; dolandyrylmak bilen izolýasiýa arasyndaky deňagramlylyk.
Per-DB/cluster: tenant üçin aýratyn DB/klaster; özygtyýarly talaplar üçin has gymmat, aňsat.

Esasy amallar

Hemme ýerde 'tenant _ id' -ni aç-açan geçirmek we ony düzüm açarlaryna/indekslerine goşmak.
RLS/DBB derejesindäki giriş syýasaty + "goşa gulp" bilen hyzmat tassyklamasy.
Şifrlemek: açar iýerarhiýasy (root KMS → key-envelope tenant → desga DEK).
Arhiw/retenşn we "ýatdan çykarmak hukugy" kärendeçiniň derejesinde syýasatçylar tarapyndan dolandyrylýar.

4) Sazlamalar, çyzgylar we wersiýalar

Tenant sazlamalary

Tablisa/ammar 'tenant _ config' (meýilnama, kwotalar, fika-baýdaklar, lokalizasiýa, SLA).
Konfigurasiýalaryň ileri tutulýan ugurlary: defolt → meýilnama → tenant → gurşaw → ulanyjy.
Gysga TTL we waka boýunça maýyplyk bilen konfigurasiýalary kesmek.

Baýdaklar we gabat gelmek

Funksiýalaryň nokat (per-tenant/per-cohort), kanareýanyň aýlawlary.
API wersiýasy: durnukly şertnama + serhetdäki adapterler (back/forward-compatible formatlar).

5) Çäkler, kwotalar we billing

Sarp ediş syýasaty

Rate limiting: 'requests/sec' per tenant/route, meýilnamalaryň ileri tutulýan "token-baket".
Quotas: ammar mukdary, obýektleriň sany, habarlar/min, jobs/sagat.
Fairness: nobatlaryň "deňagramly tertibi" + VIP üçin workerleriň izolýasiýasy.

Billing

'tenant _ id' (usage-metrikler) → agregatorlar → invoýs boýunça hasaplaýjylar.
Serhetdäki snapshotlar usage (idempotentlik we wakalary ýitirmekden goramak).
Modeller: kesgitlenen meýilnama + perep consumption, post-içmek/öňünden içmek, arzanladyş "tiered".

6) Howpsuzlyk we elýeterlilik

Tassyklamak/ygtyýarlandyrmak

OIDC/SAML 'tenant _ id', 'roles', 'scopes' bellikleri bilen.
RBAC/ABAC: kärendeçi derejesindäki rollar (Owner/Admin/Reader), taslamanyň/bölümiň atributlary.
mTLS we çäkli bellikler bilen ygtyýarlandyrylan giriş (service-to-service).

Ynam çäkleri

Soraglary kabul etmek syýasaty: sözbaşy goluny barlamak, nonce/timestamp, çeşmä baglanyşyk.
Syrlar we açarlar: per-tenant aýlawy, aýry-aýry KMS kontekstleri, esasy amallaryň barlagy.
Multi-region & data residency: region tenanta pinning, gözegçilik edilýän kross-region akymlary.

7) "Kärendeçiler boýunça" syn edilmegi

Yşyklandyryş we ölçeg

Hökmany bellikler: 'tenant _ id', 'plan', 'region', 'endpoint', 'status'.
SLI/SLO per tenant: `availability`, `p95 latency`, `error budget`.
Segmentler boýunça daşbordlar we alertler (VIP/düzgünleşdirilýän/täze).

Giriş we audit

Kireýine alyjynyň syýasaty boýunça üýtgemeýän ammar we retenşn bilen hereketleriň (kim/näme/haçan/nirede) žurnallary.
Arzan saklamak üçin wakalary öňünden jemlemek, "basmak arkaly" jikme-jiklikleri dikeltmek.

8) Öndürijilik we "noisy neighbor"

Ses garşy çäreler

Nobatlaryň/workerleriň derejesine çäkler, CPU-shares we IO-proporsiýalary per tenant.
Keshiň bölünişi: 'tenant: {id}:', TTL, 'cache stampede' -den gorag.
"tenant _ id" boýunça saýlamagy göz öňünde tutup, indeksler we soraglaryň meýilnamalary.

Sowuk başlangyçlar we "ýyly" howuzlar

VIP/iň ýokary penjireler üçin öňünden gyzdyrmak.
Metrik signallar boýunça elastik worker howuzlary (backpressure/awtoskeyling).

9) Duralgasyz täzelenmeler we migrasiýa

Strategiýa

Backward-gabat gelýän göçmeler (expand → migrate → contract).
"Kärendeçiler boýunça" migrasiýa: ösüş gözegçiligi bolan batçi, anyk 'tenant _ id' üçin "arakesme/yza gaýdyp gelmek".
Kärendeçileriň kiçi toparynda semplemek we "kanareýka" göçmek.

DR we hadysalar

RTO/RPO per tenant bilen DR-meýilnamasy; global pese gaçmazdan bölekleýin "read-only re modeim".
Wakanyň izolýasiýasy: 'tenant _ id' boýunça fýuzing, "gyzgyn" kärendeçini öçürmek beýlekilere täsir etmeýär.

10) API we teswirnamalar

REST/gRPC hökmany kärendeçi kontekstinde (belliklerde/sözbaşylarda).
Wakalar (event-driven): 'tenant. {id} .event', süzgüçler we abuna ýazylmak üçin ACL.
Global giriş nokatlary: L7-şlýuz konteksti tassyklaýar, çäkleri ulanýar, tenant syýasaty boýunça PII şifrleýär.

11) Kärendeçiniň durmuş sikli

1. Üpjün etmek: kärendeçiniň ýazgysyny döretmek, açarlary/konfigurasiýalary döretmek, sebiti baglanyşdyrmak.
2. Işjeňleşdirmek: OIDC/SAML müşderisini çykarmak, rollary/syýasatlary, başlangyç kwotalary döretmek.
3. Ekspluatasiýa: gözegçilik, billing, baýdaklary/meýilnamalary täzelemek.
4. Suspend/Trottling: Maglumatlary/eksporty saklamak bilen doňdurmak.
5. Aýyrmak/eksport etmek: retenşn, konserwirlenen yzlar, açarlary kripto-silmek (crypto-shredding).

12) Arhitekturanyň kiçi standarty (söz shemasy)

Edge (API-şlýuz): TLS/mTLS, "tenant _ id" çykarmak, çäklendirmeler, audit.
Control Plane: kärendeçileriň katalogy, konfiga, fika-baýdaklar, billing, syýasatlar.
Data Plane (hyzmatlar): stateless-hyzmatlar, nobatlar, kwotalar bilen workerler; Tenant prefiksleri bolan Redis/kv.
Storage: RLS-DB/aýry-aýry shemalar/DB; Kärendeçi üçin açarlary bolan KMS; envelope-şifrlemek bilen obýektiň ammary.
Observability: traysing/metrika/logi с тегом 'tenant _ id', alerty per plan.
Admin: kärendeçiler toparynda izolirlenen amallar (migrasiýalar/bekaplar).

13) Satylmazdan öň gözegçilik sanawy

  • Serhetde we hyzmatlarda 'tenant _ id' kesgitlemegiň ýeke-täk usuly.
  • RLS/ACL syýasatlary synaglar we "negatiw ssenariýalar" bilen barlanýar.
  • Kwotalar/çäkler/billing hakyky ýüklerde tassyklanýar; "billing damarlaryndan" gorag bar.
  • syn etmek we SLO per tenant; VIP/düzgünleşdirilýänler üçin alertler.
  • Göçmek gabat gelýär, bölekleýin yza çekilýär we kärendeçiler bar.
  • RTO/RPO per tenant bilen DR-ssenariler we yzygiderli maşklar.
  • "Kärendeçiniň açary" bilen şifrlemek, açarlaryň aýlanmagy we barlagy.
  • API şertnamalaryny/wakalary we wersiýa syýasatyny resminamalaşdyrmak.

14) Adaty ýalňyşlyklar

Problemaly kärendeçide durmak mümkinçiligi bolmazdan, global migrasiýa "bir aýlawda".
Кэш/nobatlar → maglumatlaryň syzmagy/nobatlaryň kesişmegi bilen 'tenant _ id' -e gizlin garaşlylyk.
Kontekstleriň garyşmagy (tötänleýin 'tenant _ id' -siz admin-amallar).
"Goşa gulpuň" ýoklugy: diňe DB-de RLS-siz hyzmat barlagy.
Tutuş klaster üçin bir limiter → "noisy neighbor" we SLO-nyň bozulmagy.
Dempotentlik we audit-trail bolmazdan aç-açan däl billing.

15) Strategiýany çalt saýlamak

Berk izolýasiýa/düzgünleşdirmek: Silo (aýry-aýry DB/klaster), sebit-lok.
Deňagramly netijelilik: Shared-DB per schema + RLS, per tenant açarlary.
Ýokary real-time traffigi: VIP üçin "deňagramly" kwotalar we ýörite workerler bilen umumy nobatlar.
Köp konfigurasiýalar: ficha-baýdaklar + API adapterleri, ileri tutulýan ugurlar boýunça konfigurasiýalary saklamak.

Netije

Multi-tenant ýadro - inženerçilik çäkleriniň düzgüni: 'tenant _ id' -iň aýdyň kesgitlemesi, ähli gatlaklarda berk izolýasiýa, dolandyrylýan kwotalar we aç-açan billing, üstesine-de relizleriň synlanylyşy we utgaşmasy. Beýan edilen patternlere eýermek her bir kärendeçi üçin howpsuzlygy, hilini we üýtgeşmeleriň tizligini gurban bermezden önümi giňeltmäge mümkinçilik 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.

Telegram
@Gamble_GC
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.