GH GambleHub

Hiyerarşiyi sınırlama

Limit, bir işlemin zaman/hacim/değer cinsinden resmi bir sınırlamasıdır. IGaming ve fintech'te sınırlar güvenlik, mevzuata uygunluk ve risk yönetimi için temel oluşturur. Limit hiyerarşisi, çifte harcamayı, bahisleri/depozitoları aşmayı, bonusların kötüye kullanılmasını ve sorumlu oyun ihlallerini önlemek için kimin kuralının en önemli olduğunu ve nerede uygulandığını belirtir.

1) Sınırların sınıflandırılması

Uygulama gücü ile

Sert - aşılmaz (operasyon yasağı).
Yumuşak - uyarı/sürtünme (captcha, onay), tekrarlandığında sertliğe tırmanma.

Doğası gereği

Nakit: depozito tutarı/oranları/ödemeleri; Günlük/haftalık/aylık limitler.
Zaman: oturum süresi, molalar, "soğutma", zaman aşımları.
Kantitatif: işlem sayısı, spinler, API istekleri.
Hız limitleri: RPS/rekabet.
Kotalar: Pencere başına eylem bütçesi (N/gün/hafta).
Bağlamsal: oyun/sağlayıcı/ödeme yöntemi/cihaz/ülkeye göre.

Sahibinden

Düzenleyici/Marka (Kiracı/Bölge)

Sistem (platform, altyapı koruması)

Kullanıcı tanımlı (RG içinde kendi sınırları)

2) Ölçümler ve anahtarlar (kapsam)

Her sınır bir bağlama bağlıdır (anahtar):

tenant_id · region · license · currency · channel · brand player_id · kyc_tier · rg_state · age game_id · provider_id · product (casino/sports/live)
payment_method · device_fingerprint · ip_asn

Anahtar ne kadar doğru olursa, öncelik o kadar yüksek olur (aşağıdaki hiyerarşiye bakın).

3) Hiyerarşi ve öncelikler (en spesifik kazançlar)

Seviyeleri genelden özele doğru düzenleyelim:

GLOBAL_DEFAULT
< TENANT/BRAND
< REGION/LICENCE
< PRODUCT/PROVIDER/GAME
< CURRENCY/CHANNEL/PAYMENT_METHOD
< PLAYER (KYC/RG)
< SESSION/DEVICE
<REQUEST (idempotency-key operation)
Kurallar:
  • Daha dar bir bağlam geniş bir alanla çakışır: oyuncu> bölge.
  • Herhangi bir açık inkar kazanır izin.
  • Yumuşak/sert çatışmalar sert lehine çözülür.
  • Kotaların/pencerelerin birleştirilmesiyle, izin verilen minimum değer (min-cap) kazanır.

4) Veri modeli (basitleştirilmiş)

sql
CREATE TABLE limits (
id      bigserial primary key,
scope jsonb, -- context keys (tenant, region, player_id,...)
kind     text,     -- bet_amount, deposit_daily, rps_api, payout_single, session_duration type     text,     -- HARD      SOFT      QUOTA     RATE value numeric, -- sum/qty/seconds/ops window_sec int, -- for QUOTA/RATE, else null burst int, -- for RATE token-bucket currency text, -- if applicable reason_code text, -- regulator/product/security valid_from timestamptz,
valid_to   timestamptz,
priority int default 0, -- manual specificity overlide created_by text,
created_at  timestamptz default now()
);

CREATE TABLE limit_counters (
key_hash   text primary key,  -- hash(scope,kinda,window_start)
window_start timestamptz,
consumed numeric, -- money/pcs/sec updated_at timestamptz
);

Idempotence: tüm işlemler 'operation _ id' taşır; Sayaç artışı bir kez gerçekleştirilir (gelen kutusu/giden kutusu veya versiyona göre karşılaştır ve değiştir).

5) Değerlendirme algoritması

1. Adayları'tür've 'kapsam'ı geçerek toplamak.
2. Spesifikliğe göre sıralama (eşleşen ölçümlerin sayısı) ve 'öncelik'.
3. Parametre aralığı: sertlik (sert> yumuşak), min-cap, min-window.
4. Kotaları/oran sınırını kontrol edin: token-bucket (RATE) + fix/sliding window (KONTENJAN).
5. Решение: 'ALLOW | SOFT_WARN | DENY' + 'retry _ after'/' remaining'.
6. İzleme kaydı: denetim olayı ve metrikler.

Sonuç sözleşmesi pseudocode:
json
{
"decision":"DENY",
"kind":"deposit_daily",
"remaining":0,
"window_reset_at":"2025-10-31T21:00:00Z",
"matched_limit_id":12345,
"policy":"REGULATORY",
"reason":"DAILY_CAP_REACHED"
}

6) Uygulama noktaları

API Ağ Geçidi - altyapı koruması: RATE (RPS), CONCURRENCY, burst.
Alan adı hizmetleri - anlamsal sınırlar: mevduat, oranlar, ödemeler, oturumlar.
Sağlayıcı adaptörleri - yinelenen/yerel sağlayıcı sınırları (aramadan önce doğrulayın).
İstemci UX - önleyici istemler (SOFT), "N sol", zamanlayıcılar.

Kural: Kotayı/jetonları bir kez yazın - işlemin geri döndürülemez hale geldiği yer (cüzdan/geçerli kimlik doğrulaması adımını yedekledikten sonra).

7) Nakit limitleri: depozito/oran/ödeme

Para birimi başına: İşlem para biriminde mağaza limitleri, anında FX üzerinden değil.
Min/Max:'min _ bet ',' max _ bet ',' max _ payout _ single '.
Windows: Sabit sınırları olan 'deposit _ daily/weekly/monthly' (örneğin, lisans zaman diliminde).
Kompozisyon: son izin verilen aralık = kesişme (bölgesel ∩ marka ∩ özel).

8) Sorumlu Oyun (RG)

Kendi sınırları (oyuncunun kendisine sorduğu) her zaman markalı olanlardan daha zordur.
Zaman sınırları: 'Session _ duration', 'cool _ off', 'self _ exclusion'.
Eskalasyon: yumuşak sınırın aşılması - uyarı, sert tekrarlama - (pencerenin içinde).
Denetim: Her RG değişikliği yanal olmayan (kim/ne zaman/neden) kaydedilir.

9) Oran limiti vs Kota: ne zaman

Hız sınırı (token-bucket/leaky): dalgalanma koruması; Ağ geçidi/adaptörlere uygulanır.
Kota (sabit/sürgülü pencere): toplam eylem/para bütçesini yönetmek; Etki alanına uygula (deposit_daily, bet_count_hourly).
Genellikle birlikte kullanılır: 'ORAN' (anlık zirveler) + 'KOTA' (günlük bütçe).

10) Çok kiracı ve çok bölgeli

Sınırlar her zaman 'tenant _ id've' bölge/lisans 'içerir.
İkamet: sayaçlar ve depolama -'ev "bölgesinde.

Adalet: Kiracı havuzları başına ayrı RATE/KOTA, böylece "gürültülü" başkalarının SLO'larını bozmaz

11) Idempotency ve tutarlılık

'Operation _ id' komutları; Tekrar 'tüketilen' artırmamalıdır.
Para için - kesin yol: bir işlemde/destanda (TCC) cüzdan rezervi ve artım sayaçları.
RATE için - atomik artışlar/depolar mevcut penceresini kullanın.

12) Gözlemlenebilirlik

Metrikler:
  • 'limit _ eval _ p95 _ ms', 'decision _ rate {ALLOW, DENY, SOFT}',
  • Ana türlere göre 'quota _ remaining _ percent',
  • 'rate _ throttled', 'burst _ drop',
  • 'rg _ self _ limit _ hits', 'regulatory _ hits'.

Логи/трейсинг: 'matched _ limit _ id', 'scope _ hash', 'operation _ id', 'window _ start/reset', 'remaining'.

Uyarılar: Eşik üzerinde 'DENY'/' 429' büyümesi, düzenleme kapaklarının sık sık elde edilmesi, oyuncu/cihaz tarafından "hot key".

13) Sürüm oluşturma ve denetleme

Her kural 'valid _ from/valid _ to', 'created _ by', 'reason _ code' şeklindedir.
События: 'LimitCreated/Updated/Deleted', 'LimitHit', 'LimitDenied'.
Tarihsel kararları yeniden üretmek için aktif kuralların "anlık görüntüsünü" tutun (anlaşmazlığa hazır).

14) Test etme

Sözleşme testleri: şema ve özellik/öncelik aralığı.
Mülkiyet tabanlı:'en spesifik kazançlar "," kazanı reddet izin ver ",'min-cap".
Altın durumlar: bir dizi referans çatışması (kiracı vs bölge, RG vs marka).
Kaos: Spike (RATE) isteyin, ırkları sayın, komutları tekrarlayın (idempotency).
E2E: regülatörün kontrol listesindeki limit eşleşmeleri (depozito/hafta/ay).

15) Oyun kitapları

1. Fırtına 429/ağ geçidinde kısma

Eşzamanlılığı azaltın, belirteç kovasını geçici olarak artırın, kritik yolların önceliklendirilmesini sağlayın, kaynakları analiz edin (ASN/IP).

2. Düzenleme sınırına göre toplu arızalar

Pencere zamanlamasını ve saat dilimini kontrol edin; Uzatılmış soft-UX (açıklamalar), uygunluğu bildirir.

3. Yarış nedeniyle yanlış pozitif başarısızlıklar

'Player _ id/kind' tuşu ile serileştirmeyi etkinleştir, 'operation _ id'ile CAS/dedup'a geç.

4. Sağlayıcı sınırı ile tutarsızlık

Oyun başına min/max eşitleyin, bağdaştırıcıya ön doğrulama ekleyin, oyun kataloğunu/yerleşimini geçici olarak düşürün.

16) Tipik hatalar

Hiyerarşi eksikliği: Kurallar arasında çekişme.
UI'de sunucu doğrulaması olmadan sınırların hesaplanması.
Kotaların oran sınırlarıyla değiştirilmesi (ve tersi).
Para birimlerini/parasal limitleri olan adımları göz ardı etme (CLP/JPY).
Idempotency yok - çift kota silme.
Tüm kiracılar için tek bir RATE havuzu - kesme sorunları.
Denetim yok - başarısızlık açıklanamaz.

17) Hızlı tarifler

Teklif kabulü: 'max _ bet' = min (bölge, oyun, sağlayıcı, kullanıcı RG); RATE on'/bahisleri. Yer '= 20 rps/oyuncu, KOTA = 500 bahis/gün.
Mevduat: 'deposit _ daily/monthly' + 'deposit _ single'; PSP limitlerini önceden doğrulayın.
Oturumlar: 'Session _ duration' hard + reminders every N minutes (soft).
API koruması: 'ip _ asn've' tenant _ id 'tuşlarıyla global RATE; Serbest bırakmak için kanarya pencereleri.

18) Satış öncesi kontrol listesi

  • En özel kazançlar, inkar et> izin ver.
  • 'Kapsam','tür ',' tür ', pencereler, para birimleri ve öncelikleri olan veri modeli.
  • Uygulama noktaları: ağ geçidi (RATE), etki alanı (KOTA/para), adaptörler (sağlayıcı).
  • Idempotency ('operation _ id') ve anahtarlarla serileştirme; Sayaçlar atomiktir.
  • Gözlemlenebilirlik: çözüm metrikleri, pencere gecikmeleri, uyarılar; trace with 'matched _ limit _ id'.
  • Değişikliklerin ve eylemlerin sürüm ve değiştirilemez denetimi.
  • Test Paketi: contract/property/golden/chaos/E2E.
  • Çok kiracılı adalet ve veri ikameti bir araya geldi.
  • SOFT sınırları için UX: arkadaşça mesajlar, 'remaining/retry _ after'.
  • Olay oyun kitapları uyum ve destek ile uyumludur.

Sonuç

Sınır hiyerarşisi bir karar sistemidir, bir dizi farklı sayı değildir. Açık özgüllük ve öncelik sırası, tek bir veri modeli, doğru uygulama noktaları, idempotans ve gözlemlenebilirlik, sınırları kiracılar, bölgeler ve ürünler arasında ölçeklendiren ve büyümeyi engellemeyen sağlam bir güvenlik ve uyumluluk döngüsüne dönüştürür.

Contact

Bizimle iletişime geçin

Her türlü soru veya destek için bize ulaşın.Size yardımcı olmaya her zaman hazırız!

Entegrasyona başla

Email — zorunlu. Telegram veya WhatsApp — isteğe bağlı.

Adınız zorunlu değil
Email zorunlu değil
Konu zorunlu değil
Mesaj zorunlu değil
Telegram zorunlu değil
@
Telegram belirtirseniz, Email’e ek olarak oradan da yanıt veririz.
WhatsApp zorunlu değil
Format: +ülke kodu ve numara (örneğin, +90XXXXXXXXX).

Butona tıklayarak veri işlemenize onay vermiş olursunuz.