GH GambleHub

Texnologiyalar və infrastruktur → Serverless yanaşma və funksiyalar

Serverless yanaşma və funksiyaları

1) serverless nədir və lazım olduqda

Serverless - buludun serverlərin idarə edilməsi, miqyaslandırma və yamaqları öz üzərinə götürdüyü və komanda hadisə prosessorlarını yazaraq FaaS (Functions-as-a-Service) və BaaS (idarə olunan xidmətlər: növbələr, DB, anbarlar) istifadə etdiyi model. Siz çatdırılma sürətində qazanırsınız, faktiki performans üçün pul ödəyirsiniz və asanlıqla «gevşek» yükləri ölçürsünüz.

Harada iGaming/fintech xüsusilə faydalıdır:
  • PSP/KYC vebhukları (bir çox qısa sorğular, gözlənilməz zirvələr).
  • Antifrod/skoring (hadisə funksiyaları, enrichment, feature store).
  • Hesabat/CDC → DWH (paket və axın emalı).
  • Marketinq/CRM (tetikleyici hadisələr, toplar, kuponlar, seqmentasiya).
  • Asan backend-API və xidməti tapşırıqlar (throttling, cron-funksiyalar).
Server-less istifadə etməmək daha yaxşıdır:
  • Sabit aşağı P99 gecikmə (alt-10ms) tərəddüd etmədən tələb olunur.
  • Uzun ömürlü bağlantılar/protokollar (proxy olmadan yüksək tezlikli real-time).
  • Uzun CPU/GPU və tight coupling ilə böyük, stateful hesablama.

2) Memarlıq kərpicləri

2. 1 FaaS

Hadisə prosessorları: HTTP/API şlyuz, növbələr, axınlar, zamanlayıcılar, obyekt saxlama, DB tetikleyiciləri.
Nazik başlanğıc/paket: qatlar/görüntü funksiyaları, qızdırma.

2. 2 BaaS və inteqrasiya

Domen hadisələri üçün növbələr/axın (at-least-once), Pub/Sub.
Anbarlar: obyekt (xammal/artefaktlar), KV/cache, sənədlər/relyasiya.
Orkestr: state machines/step functions, dastanlar və kompensasiyalar.
API şlyuz: autentifikasiya (OAuth/OIDC/HMAC), limitlər, transformasiyalar.

2. 3 Şəbəkə konturu

Public front (edge/API-şlyuz) + VPC-də DB/Secrets/PSP-yə daxil olmaq üçün xüsusi funksiyalar.
Egress-control: PSP/KYC allow-list, sabit NAT-IP.

3) Performans: soyuq başlanğıc, rəqabət, uzunluq

Soyuq başlanğıc: fasilədən sonra konteyner funksiyasının ilk işə salınması.
Mitiqasiya: asılılıqları minimuma endirin, «istiləşmə» (periodic invoke) istifadə edin, funksiyaları mənbələrlə eyni zonada saxlayın, uzun müddətləri diqqətlə tətbiq edin.
Rəqabət: PSP/DB-ni «doldurmamaq» üçün 'max _ concurrency' və mənbə limitlərini (növbələr/şluz) verin.
İcra müddəti: uzun tapşırıqlar üçün - addımlara bölünmə + orkestrasiya (step functions), ağır hesablamalar üçün - batch/containers.

4) Etibarlılıq: idempotentlik, retraj, DLQ

İdempotentlik: «Idempotency-Key »/qəbulda deuplikasiya (açar + TTL-saxlama).
Retrajlar: eksponensial backoff + jitter, cəhd limitləri; biznes səhvləri (4xx) müvəqqəti (5xx/timeout) ayırın.
DLQ (dead-letter queue): N cəhdlərindən sonra keçməyən mesajlar üçün; replay konsol və track tələb olunur.
Exactly-once (praktiki olaraq): outbox/inbox şablonları, hadisələrin əməliyyat jurnalı.

5) Vəziyyət və orkestr

Funksiya vəziyyəti olmadan, dövlət - xarici saxlama.
State machines: ödəniş/çıxış addımları, KYC-workflow, anti-frod yoxlama; dəqiq səhv/kompensasiya modeli.
Saqi: geri çəkildikdə «rezerv → təsdiq → kompensasiya».

6) Təhlükəsizlik və uyğunluq

Ən kiçik imtiyazlar prinsipi üzrə IAM: rollar per-funksiyası, növbə/backets/cədvəllər.
Secrets: Secret Manager/KMS, Rotation, açarlar üçün HSM səviyyəsi.
mTLS/HMAC webhook, bədən imzası, vaxt pəncərəsi ± 5 dəq.
API-şlüzdə daxili WAF/bot qorunması, rate-limits/quotas.
Seqmentasiya: prod/steyj, xidmət hesabları, şəxsi subsetlər.
PII/PCI: PAN tokenizasiyası, log maskalanması, «məlumatların minimuma endirilməsi».
Audit: dəyişməz qeydlər (WORM), zəng izi, tənzimləyici saxlama.

7) Müşahidə və keyfiyyətə nəzarət

Metriklər: RPS, P50/P95/P99, kodlarda səhvlər, müddət, soyuq başlanğıc, retraj konveyeri, DLQ ölçüsü.
Trasinq (OTel): Şlz vasitəsilə 'trace _ id' korrelyasiyası → funksiyası → növbə → DB/PSP; məcburi etiketlər 'api _ version', 'region', 'partner'.
Log: strukturlaşdırılmış, maskalı PII.
Simptomlara görə alertlər: burn-rate SLO, retrajların böyüməsi, P99 quyruğu.
Sintetika: hədəf ölkələrdən yoxlamalar (TR/BR/EU), webhook imitasiyası.

8) FinOps və dəyəri

«Çağırışlar və millisaniyələr üçün» ödəyin. İzləmə: başlanğıc tezliyi, müddəti, yaddaş, trafik.
İsti yolları profil edin: ağır asılılıqları qat/görüntü, bağları cache.
Limitlər və batching ilə fan-out (kütləvi paralel zənglər) saxlayın.
«Sızmaları» tanıyın: sonsuz retralar, emal edilmədən DLQ mesajları.
Pik pəncərələri planlaşdırın (turnirlər/tədbirlər) - proqnozlaşdırılan istiləşmə və kvotalar.

9) CI/CD və versiyaların idarə edilməsi

IaC: Terraform/CloudFormation/SAM/CDK - funksiyalar, növbələr, hüquqlar, şlyuzlar şablonları.
Paketləmə: asılılıq lock faylları, minimal görüntü/qatlar.
Test: müqavilə testləri (OpenAPI/gRPC), yerli rantime inteqrasiya, idempotentlik testləri.
Deploy: canary/blue-green, feature flags, sürətli rollback.
API versiyası: '/vN/' və ya mediatiplər; Deprecation/Sunset və hadisə sxemləri uyğunluğu.

10) iGaming/Fintech üçün nümunələr

Ödəniş/nəticə vebhukları: qəbul → imzanın təsdiqlənməsi → idempotentlik → hadisənin yayımı 'payout. updated '→ cüzdan/hesabat yeniləmələri orkestri.
Anti-skoring: enricher funksiyası (IP/cihaz/geo/tarix), asenxron həll, taymaut və fallback strategiyaları.
KYC/AML payline: paralel yoxlamalar (sənədlər, sanksiyalar, PEP), nəticələrin yığılması, təkrar sorğular üçün dastanlar.
Turnirlər/reytinqlər: tur hadisələri → streaming-aqreqasiyaları → liderlər cədvəllərinin yenilənməsi, TTL-cache oxu.
Tənzimləyicilərə hesabat: CDC → transformasiya funksiyaları → vitrinlər DWH, məlumatların təravətinə görə SLA.
Marketing/CRM: davranış tetikleyiciləri → kuponlar/toplar, deduplikasiya və istifadəçi limitləri.

11) Fraqmentlərin nümunələri

11. 1 Idempotent vebhuk qəbulu (psevdokod)

python def handler(event):
assert verify_hmac(event. headers, event. body, secret)
key = f"idemp:{event. headers['Idempotency-Key']}"
if kv. exists(key):
return kv. get (key) # repeat - give the same result result = process (event. body) # public event, state record kv. set(key, result, ttl=86400)
return result

11. 2 Pul çıxarma orkestrasiyası (state machine, ideya)

1. 'validate _ request' → 2) 'lock _ balance' → 3) 'call _ psp' (retrajlarla) →

2. 'await _ webhook' (vaxt → kompensasiya) → 5) 'finalize/notify'.

12) Check-list tətbiqi serverless

1. Hadisələrin mənbələri və müqavilələr (sxemlər/versiyalar) üzrə razılaşmalar müəyyən edilmişdir.
2. Rəqabət limitləri və «diqqətli» retrajlar, DLQ və replay var.
3. Xüsusi şəbəkələr/VPC, egress-allow-list, PSP-yə sabit IP daxildir.
4. Ən kiçik imtiyazlar prinsipi ilə IAM, KMS/Secret Manager-da sirlər.
5. Observability: OTel izi, P99/səhv/soyuq başlanğıc üçün dashboard.
6. FinOps: büdcələr, dəyər riskləri, müddət/yaddaş nəzarəti.
7. CI/CD: canary/blue-green, müqavilələr/idempotentlik avtostestləri.
8. Sənədləşmə: DevPortal/Postman kolleksiyaları, payload nümunələri, Deprecation/Sunset.

13) Anti-nümunələr

Bir dəstə asılılıqla «qalın» funksiyalar → yavaş soyuq başlanğıc.
Idempotentlik və imzanın olmaması → dublikatlar/saxtakarlıq.
Limitsiz fan-out → rəqabət fırtınası, provayderdə trottling.
İzləmə/alert olmadan zamanlayıcılarda/kronlarda məntiq → «sakit» SLA uğursuzluqları.
Şifrələmə olmadan mühit dəyişənlərində proto-sirləri qarışdırın.
Schema Registry və uyğunluq qaydaları olmadan hadisə müqavilələri.

14) Yekun

Serverless bir hadisə əməliyyat bulud sistemidir: siz biznes məntiqinə diqqət yetirirsiniz və miqyaslandırma və infrastruktur «tələb olunur». FaaS + idarə olunan xidmətləri birləşdirin, idempotluq, orkestr və müşahidə əlavə edin, xərcləri nizam-intizam edin və zirvələrə tab gətirən, sürətlə inkişaf edən və qənaətli qalan bir platforma əldə edin.

Contact

Bizimlə əlaqə

Hər hansı sualınız və ya dəstək ehtiyacınız varsa — bizimlə əlaqə saxlayın.Həmişə köməyə hazırıq!

Telegram
@Gamble_GC
İnteqrasiyaya başla

Email — məcburidir. Telegram və ya WhatsApp — istəyə bağlıdır.

Adınız istəyə bağlı
Email istəyə bağlı
Mövzu istəyə bağlı
Mesaj istəyə bağlı
Telegram istəyə bağlı
@
Əgər Telegram daxil etsəniz — Email ilə yanaşı orada da cavab verəcəyik.
WhatsApp istəyə bağlı
Format: ölkə kodu + nömrə (məsələn, +994XXXXXXXXX).

Düyməyə basmaqla məlumatların işlənməsinə razılıq vermiş olursunuz.