GH GambleHub

Izolarea și limitele chiriașilor

Izolarea chiriașilor și limitele sunt fundamentul arhitecturii multi-chiriași. Scop: Astfel încât acțiunile unui chiriaș să nu afecteze niciodată datele, securitatea și SLO ale altuia, iar resursele să fie distribuite în mod echitabil și previzibil. Mai jos este o hartă practică a soluțiilor de la nivelul datelor la planificarea computerizată și gestionarea incidentelor.

1) Modelul de amenințare și țintele

Amenințări

Scurgeri de date între chiriași (logic/prin cache/prin jurnale).
„Vecinul zgomotos”: degradarea performanței din cauza piroanelor într-un singur client.
Escaladarea privilegiilor (eroarea politicii de acces).
Derivă de facturare (neconcordanță de utilizare și taxe).
Scenarii Cascade fail-safe (incident de unul duce la downtime de mai multe).

Obiective

Izolarea strictă a datelor și secretelor.
Limite/cote marginale și planificare echitabilă.
Audit transparent, observabilitate și facturare.
Localizarea incidentelor și recuperarea rapidă pe chiriaș.

2) Niveluri de izolare (model end-to-end)

1. Date

'tenant _ id' in keys and indexes, Row-Level Security (RLS).
Criptare: KMS ierarhie → cheie chiriaș (KEK) → chei de date (DEK).
Scheme separate/DB cu cerințe ridicate (Silo), un cluster comun cu RLS pentru eficiență (Pool).
Politici de retenție și „dreptul de a uita” per chiriaș, chei de mărunțire a criptei.

2. Calcule

Cote CPU/RAM/IO, bazine de lucrători pe chiriaș, cozi ponderate.
Izolarea GC/heap (containere/setări JVM/Runtime), limitele paralelismului.
Autoscaling per chiriaș + backpressure.

3. Reţea

Segmentare: puncte finale private/VPC, ACL prin 'chiriaș _ id'.
Limitarea ratei și plafoanele de conectare per chiriaș la frontieră.
Protecție împotriva DDoS/boți, luând în considerare planul/prioritatea.

4. Operațiuni și procese

Migrații chiriași, copii de rezervă, DR, feature-steaguri.
Incidente - "micro-explozie-rază": fuzionarea cu "chiriaș _ id'.

3) Controlul accesului și contextul chiriașilor

AuthN: OIDC/SAML; tokens carry 'tenant _ id',' org _ id', 'plan', 'scopes'.
AuthZ: RBAC/ABAC (roluri + atribute ale proiectului, departament, regiune).
Context la frontieră: gateway-ul API extrage și validează contextul chiriașilor, completează cu limite/cote, scrie la trasee.
Principiul „blocare dublă”: verificarea în serviciul + RLS/politica de baze de date.

4) Date: scheme, memorie cache, busteni

Scheme:
  • Schema partajată (nivel rând): este necesară eficiență maximă, RLS strict.
  • Per-schema: izolare/operabilitate tradeoff.
  • Per-DB/cluster (Silo): pentru VIP/reglementat.

Cache: chiriaș prefixe cheie: {id}:... ", TTL după planuri, protecție cache-busculadă (blocare/reîmprospătare timpurie).

Jurnale/metadate: pseudonimizarea completă a PII, filtre prin 'chiriaș _ id', interzicerea „lipirii” buștenilor diferiților chiriași.

5) Limitarea traficului și a operațiunilor

Mecanica de bază

Token Bucket: explozii netezite, parametrizare „rată ”/„ explozie”.
Găleată cu scurgeri: debit de stabilizare.
Fereastră fixă/fereastră glisantă: cote simple/exacte pe fereastra de timp.
Limite de concurență: capace pentru cereri simultane/jabs.

În cazul în care se aplică

La frontieră (poarta L7/API) - protecție de bază și „eșec rapid”.
În miez (în servicii/cozi) - pentru al doilea circuit și „cota echitabilă”.

Politici

Prin chiriaș/plan/punct final/tip de operațiune (API-uri publice, exporturi grele, acțiuni admin).
Prioritate: VIP devine mai „explozie” și greutate în arbitraj.
Cheile de la Idempotency pentru retrageri sigure.

Profile de probă (concepte)

Starter: 50 req/s, explozie 100, 2 exporturi paralele.
Afaceri: 200 req/s, izbucni 400, 5 exporturi.
Enterprise/VIP: 1000 req/s, explozie 2000, lucrători dedicați.

6) Cote și planificare echitabilă (corectitudine)

Cote de resurse: stocare, obiecte, mesaje/min, locuri de muncă/oră, dimensiunea cozii.
Ponderat echitabil coadă/deficit Round Robin: „ponderat” accesul la lucrătorii partajați.
Piscine de lucru per chiriaș: izolare rigidă pentru clienții zgomotoși/critici.
Controlul admiterii: eșec/degradare înainte de execuție atunci când cotele sunt epuizate.
Backoff + jitter: întârzieri exponențiale pentru a menține exploziile în afara sincronizării.

7) Observabilitate și facturare per chiriaș

Etichetele necesare sunt 'tenant _ id',' plan ',' regiune ',' endpoint ',' status '.
SLI/SLO per chiriaș: latență p95/p99, rată de eroare, disponibilitate, utilizare, saturație.
Măsurători de utilizare: CPU operare/octet/al doilea contoare → agregator → facturi.
Idempotența facturării: instantanee la frontieră, protecție împotriva dublelor scrieri/pierderi de evenimente.
Tablouri de bord în segmente: VIP/reglementate/chiriași noi.

8) Incidente, degradare și DR „de chiriaș”

Fuzionarea prin "chiriaș _ id': oprirea/împingerea de urgență a unui anumit chiriaș fără a afecta restul.
Degradare grațioasă: mod read-only, cozi de nisip, sarcini amânate.
RTO/RPO per chiriaș: obiective de recuperare și pierdere pentru fiecare plan.

Burghiu: regulat „zile de joc” cu chiriaș zgomotos tăiat și DR verificat

9) Conformitate (rezidență, confidențialitate)

Pinning chiriaș în regiune; reguli clare privind fluxul transregional.
Audit de acces la chei/date, logare admin.
Gestionați retenția și exportul de date per chiriaș.

10) Mini referință: cum să o puneți împreună

Fluxul de cerere

1. Edge (API gateway): TLS → extract 'tenant _ id' → validare token → aplică rata/cote → pune trasee.
2. Motor politic: context 'chiriaș _ id/plan/features' → decizia privind traseul și limitele.
3. Serviciu: drepturi de verificare + etichete 'chiriaș _ id' → lucrul cu baza de date în RLS → cache cu prefix.
4. Utilizare-colectare: contoare de operații/octeți → agregator → facturare.

Date

Schema/DB după strategie (rând-nivel/per-schemă/per-DB).
KMS: chei chiriaș, rotație, cripto-mărunțire pe ștergere.

Calcul

Cozi cu greutăți, piscine de lucrători pe chiriaș, plafoane de concurență.
Autoscaling prin măsurători per chiriaș.

11) Pseudo-politică (pentru orientare)

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) Lista de verificare pre-vânzare

  • Sursa unică a adevărului "chiriaș _ id'; peste tot este aruncat și logat.
  • RLS/ACL activat la nivelul DB + verificarea serviciului (dublu blocare).
  • Chei de criptare per chiriaș, cripto-mărunțire documentate.
  • Limite/cote la frontieră și în interior; explozii testate și „izbucni”.
  • Lucrători VIP echitabili și/sau dedicați; capace на concurență.
  • SLO-uri și alerte per-chiriaș; tablouri de bord pe segmente.
  • Colectarea utilizării este idempotentă; rollup de facturare verificat.
  • DR/incidentele sunt localizate chiriașului; fuzionarea cu "chiriaș _ id' funcționează.
  • Numerarul/jurnalele sunt împărțite pe chiriaș; PII mascat.
  • Procedurile de migrare/backup/export sunt bazate pe chiriași.

13) Erori tipice

RLS dezactivat/ocolit de utilizator „serviciu” - risc de scurgere.
Limitatorul global unic → „vecinul zgomotos” și încălcarea SLO.
Cache-uri/cozi partajate fără prefixe → intersecția datelor.
Facturarea contează prin jurnalele care se pierd la vârfuri.
Lipsa de fuziune chiriaș - cascadă cade.
Migrațiile "într-o singură lovitură" fără capacitatea de a opri problematica "chiriaș _ id'.

14) Selectarea rapidă a strategiei

Reglementat/VIP: Date siloz (per-DB), lucrători dedicați, cote stricte și rezidență.
Mass SaaS: schemă comună + RLS, limite puternice la frontieră, coadă echitabilă în interior.
Încărcați "zgomotos/pulsant": mari "burst' + hard concurență-capace, backpressure și priorități în funcție de planuri.

Concluzie

Izolarea chiriașilor și limitele se referă la limite și justiție. Ștergeți 'chiriaș _ id' prin stiva, RLS și criptarea datelor, limitarea și cotele la frontieră și în miez, planificator echitabil, observabilitatea și localizarea incidentelor - toate acestea împreună oferă securitate, calitate previzibilă și facturare transparentă pentru fiecare chiriaș, chiar și cu o creștere agresivă a platformei.

Contact

Contactați-ne

Scrieți-ne pentru orice întrebare sau solicitare de suport.Suntem mereu gata să ajutăm!

Pornește integrarea

Email-ul este obligatoriu. Telegram sau WhatsApp sunt opționale.

Numele dumneavoastră opțional
Email opțional
Subiect opțional
Mesaj opțional
Telegram opțional
@
Dacă indicați Telegram — vă vom răspunde și acolo, pe lângă Email.
WhatsApp opțional
Format: cod de țară și număr (de exemplu, +40XXXXXXXXX).

Apăsând butonul, sunteți de acord cu prelucrarea datelor dumneavoastră.