GH GambleHub

Moslamalarni joylashtirish

1) Nima uchun

Konfiguratsiya koddan tez-tez o’zgaradi va tushumga (PSP routingi, limitlar, koeffitsiyentlar, front fichlari) va komplayensga (KYC/AML, RG) bevosita ta’sir qiladi. Konfiguratsiyalarni oziq-ovqat mahsulotlariga yetkazib berishda takrorlanadigan, tekshiriladigan va qaytariladigan jarayon kerak.

2) Qonunning

1. Configuration as Data: konfiglar - «qo’lda bosish» emas, balki versiya qilinadigan ma’lumotlar (YAML/JSON).
2. Schema-first: har qanday yozuv sxemaga qarshi validatsiya qilinadi (JSON Schema/Protobuf).
3. Siyosatchilar kod sifatida: geytlar, ruxsatnomalar, SoD - siyosatchilar omborida.
4. GitOps: Haqiqatning yagona manbai - Git; klastyerlar rekonsayler tomonidan muvofiqlashtiriladi.
5. Progressiv yetkazib berish: segmentlar (GEO/tenant/bank/provayder) bo’yicha kanareykali prokatlar.
6. Zero-downtime: atom svitchlari, ikki marta buferlash, formatlarning mosligi.
7. Kuzatilganlik by design: audit, qo’llash metrikasi, drift-detektor.
8. Xavfsizlik: minimal imtiyozlar, sirlar alohida, xavfli o’zgarishlarga SoD/4-eyes.

3) Konfiguratsiyalar modeli

Statik: kamdan-kam o’zgaradi, relizni talab qiladi (portlar, yadro vaqtlari).
Dinamik: restartlarsiz (PSP routing, fichlar, limitlar) qo’llaniladi.
Sirlar: kalitlar/tokenlar; alohida kontur (KMS/Secret Manager).
Artefaktlar: qoidalar/meppinglar fayllari (BIN → bank, GEO → PSP, bonuslar limitlari).

Manzil kalitlari:’tenant’,’region’,’environment’,’service’,’version’,’segment’(psp/bank_group/device).

4) Formatlar va sxemalar

Sxema misoli (JSON Schema, payments-routing):
json
{
"$schema": "https://json-schema. org/draft/2020-12/schema",
"title": "pspRouting",
"type": "object",
"properties": {
"version": {"type": "string"},
"rules": {
"type": "array",
"items": {
"type": "object",
"required": ["geo","binGroup","primary","fallback"],
"properties": {
"geo": {"type":"string"},
"binGroup":{"type":"string"},
"primary":{"type":"string"},
"fallback":{"type":"array","items":{"type":"string"}},
"limits":{"type":"object","properties":{"perMinute":{"type":"integer"}}}
}
}
}
},
"required": ["version","rules"]
}

5) Hayot sikli (GitOps)

1. Authoring: PR konfiguratsiyalar omborida: maʼlumot + roʻyxat/oʻzgartirish bogʻlamasi.
2. Lint/Validate: CI: sxemalar, havolalar, semantika (ziddiyatli qoidalar), stendda dry-run.
3. Policy Gates: SoD/4-eyes, xavf-sinf, freeze oynalari, SLO maqomiga muvofiqlik.
4. Staging Apply: integratsion testlar/sintetika progoni, SLI tekshiruvi.
5. Progressive Delivery: prod-kanareika (1-5%) → 25% → region/tenant → 100%.
6. Post-monitoring: 30-60 min metrik/alert; natijani qayd etish.
7. Promotion/Rollback: reliz belgilari, Git revert/« previous version »orqali tez qaytish.

6) Yoyish strategiyasi

Segmentlar bo’yicha kanareyochnaya:’tenant = A, geo = TR, bank = BIN _ XXXX’.
Hududlar bo’yicha: EU → LATAM → APAC, soat cho’qqilarini hisobga olgan holda.
Funksionalligi boʻyicha: bayroqni (feature flag) guardrails (TTL, qamrov limitlari) bilan yoqish.
Manba uchun Blue/Green: o’quvchilarni yangi snapshotga o’tkazish.

7) Dinamik yuklash va muvofiqlik

Issiq qayta yuklash (watchers/konsullar/OTel Collector pipeline reload).
Qoʻshiq formati (v1 + v2): Prod ikkalasini ham oʻqiydi, ishlab chiqaruvchilar yangisiga yozadilar.
Muvofiqlik: «Kim qaysi konfiguratsiyada» ni ko’rish uchun API/metrik javoblardagi versiya.

8) Xavfsizlik, sirlar, SoD

Sirlar alohida: KMS/Secret Managerda saqlash, maydon darajasida shifrlash, ABAC orqali kirish.
SoD/4-eyes: to’lov routingi/bonuslar/PII-eksport limitlarining o’zgarishi - faqat ikki marta ma’qullash orqali.
JIT huquqlari: operatsiyalar uchun vaqtinchalik tokenlar, to’liq audit.
Xavfsizlik tekshiruvi: linter PII/test kalitlarini konfigada taqiqlaydi.

9) Qo’llashdan oldin validatsiyalar

Sxemalar (JSON Schema/Protobuf), linterlar, kardinallikni tekshirish.
Domen semantikasi: sikllar/dublikatlar/» qora tuynuklar» mavjud emas, joriy bogʻlanishlar bilan moslashuvchan.
Shadow-trafik/simulyatsiyalar: yangi routing/qoidalarni haqiqiy oqimda oʻqish-yozmasdan «haydash».
SLO-geyt: qizil SLI → reklama taqiqlangan.

10) Kuzatuv va audit

Joylashtirish metrikasi: foydalanish vaqti, muvaffaqiyat, qamrov ulushi, parsing xatolari, rollbacks.
Hodisalar: kim/nima/qachon/nima uchun, diff (shu jumladan sirlarni yashirish).
Drift-detektor: «Git’da» va «rantaymda» taqqoslash; tafovut yuzaga kelganda alert.
Nusxalar (exemplars): konfiguratsiyalarni oʻqish uchun’trace _ id’ga havola.

11) Namunaviy konfiguratsiyalar katalogi (iGaming)

Payments routing: PSP GEO/BIN/usul bo’yicha; retray limitlari; 3DS fichlari.
KYC/AML: provayderlar, taymautlar, TTL, fallback/qoʻlda tekshirish qoidalari.
Risk & RG: velocity-limitlar, kunduzgi/oylik kaplar, geo-istisnolar.
Games/Core: kesh koeffitsiyentlari, pullar oʻlchamlari, ficheflaglar (takrorlash tarixi, yangi rejimlar).
Ops/Observability: alert ostonalari, sampling qoidalari, retention sinflari, sintetika.
Status/Comms: xabarlar, lokalizatsiya namunalari, yangiliklar jadvali.

12) Konfiguratsiya paketi misoli (manifest)

yaml apiVersion: cfg. platform/v1 kind: ConfigRelease metadata:
id: payments-routing-2025-11-01 change: "RTE-421: reroute TR BIN_4571 → PSP2"
spec:
scope:
tenants: [brandA, brandB]
regions: [EU]
segments:
geo: [TR]
strategy:
steps:
- name: canary coverage: "5%"
duration: "20m"
- name: ramp coverage: "25%"
duration: "30m"
- name: region-full"
coverage: "100%"
gates:
require:
- policy: "slo-green"
- approval: ["Payments Lead","Compliance"]
- freeze: "not-in-effect"
rollback:
to: "payments-routing-2025-10-29"
autoIf:
- metric: "auth_success_rate"
condition: "drop>10% for 10m"

13) Orqaga qaytish (rollback) va o’zgarishlar xavfsizligi

Git orqali revers:’revert ’/» promote previous».
Atom o’tkazgich: o’quvchilar oldingi snapshotga o’tishadi.
Avto-qaytish mezonlari: SLI/KRI degradatsiyasi, parsing/validator xatolarining o’sishi.
Kommunikatsiyalar: hodisa-bot avtotransport holatini e’lon qiladi.

14) Multi-tenant va geo-rezidensiya

Fayl/jild va kalitlar darajasidagi nomlar boʻshliqlari (’tenant/region/env’).
O’qish siyosati: xizmatlar faqat o’z narsalarini ko’radi.
Konfiguratsiyalarning geo-nusxalari (EU/LATAM/APAC) va SLA bilan replikatsiyalarning kechikishi.
Turli yurisdiksiyalar uchun turli oynalar (komplayens/bayramlar).

15) Unumdorlik va narx (FinOps)

Snapshotlar keshi: lokal/taqsimlangan; TTL/ETag/If-None-Match.
Konfiguratsiyalar o’lchami: tuzilmalar hajmi va chuqurligi bo’yicha limitlar; modullarga bo’lish.
Kirish xaritasi: o’qish top-iste’molchilari; pulling chastotasini optimallashtirish.
Xatolar qiymati: «qimmat» qaytarmalar/qo’shimcha kanareykalar hisoblagichi.

16) Integratsiya

Alerting/SLO: Gate promoushna, avto-otkatlar.
Release-gates: Agar konfiguratsiya tugallanmagan boʻlsa, kod relizlarini bloklash.
Hodisa-bot: ’/config promote’, ’/config rollback’buyruqlari, difflar va dashbordlarga havolalar.
Workflow Engine: yuqori xavfli o’zgarishlar uchun human-task; eskalatsiya vaqtlari.

17) KPI/KRI funksiyalari

Lead Time konfiguratsiyasi: PR → prod.
Change Failure Rate (CFR): qaytish bilan oʻzgarishlar ulushi.
MTTR hodisa.
Drift rate: tafovut chastotasi Git runtime.
SLO-gates pass rate: qo’lda istisnosiz o’tgan o’zgarishlar ulushi.
O’zgartirish narxi: CPU/IO, kanareykalar, hodisalar.

18) Joriy etish yo’l xaritasi (6-10 hafta)

Ned. 1-2: konfiguratsiyalar, sxemalar, linterlar katalogi; Git-repo; bazaviy CI (validatsiya/diff).
Ned. 3-4: GitOps-rekonsayler, dry-run/staging, status-dashbordlar; TTL bilan ficheflaglar.
Ned. 5-6: policy-as-code (SoD/derazalar/freeze/SLO-geytlar), kanareykali konkida uchish, avtotransport.
Ned. 7-8: drift-detektor, KMS orqali sirlar, ko’p tenant va geo-nusxalar, integratsiya hodisasi-bot.
Ned. 9-10: yuklash/xaos-testlar, FinOps-hisobot, buyruqlar va shablonlarni o’rganish.

19) Artefaktlar shablonlari

PR Template: maqsad, xavf-sinf, viloyat (tenant/region), yoyish rejasi, qaytish rejasi, dry-run natijalari.
Policy Pack: SLO-geytlar, SoD/4-eyes, freeze-kalendar, oʻlcham/kardinallik limitlari.
Runbook: «kanareykalarning joriy versiyasini/diff/holatini qanday o’qish kerak», «promoushni qo’lda qanday to’xtatish kerak».
Config Catalog: egasi, sxemasi, o’quvchilari, yangilanish chastotasi, komplayens-eslatmalar.

20) Antipatternlar

Git/auditsiz «ma’muriy» qo’lda tuzatishlar.
Reliz-artefakt kodi bilan aralashtirilgan konfiglar, issiq almashtirish imkoniyatisiz.
Parsingda sxemalar/validatsiyalar yo’qligi.
Global bir vaqtning o’zida kanareykasiz yoyish.
Konfigadagi umumiy sirlar; Git sirlari.
Ficheflaglarda/TTL/guardrails qaytishi yoʻq.
Drift detektorning yo’qligi.
SLO-geytlarni «qoʻngʻiroq orqali» va yozuvsiz olib tashlash.

Jami

Konfiguratsiyalarni joylashtirish - bu boshqariladigan konveyer: GitOps va GitOps siyosati va GitOps sxemalari va ilg’or yetkazib berishdagi ma’lumotlar. Bunday ramka iGaming platformasining xulq-atvorini SLOni, tushumni va tartibga solish talablariga muvofiqligini saqlab qolish orqali tez va xavfsiz oʻzgartirish imkonini beradi.

Contact

Biz bilan bog‘laning

Har qanday savol yoki yordam bo‘yicha bizga murojaat qiling.Doimo yordam berishga tayyormiz.

Telegram
@Gamble_GC
Integratsiyani boshlash

Email — majburiy. Telegram yoki WhatsApp — ixtiyoriy.

Ismingiz ixtiyoriy
Email ixtiyoriy
Mavzu ixtiyoriy
Xabar ixtiyoriy
Telegram ixtiyoriy
@
Agar Telegram qoldirilgan bo‘lsa — javob Email bilan birga o‘sha yerga ham yuboriladi.
WhatsApp ixtiyoriy
Format: mamlakat kodi va raqam (masalan, +998XXXXXXXX).

Yuborish orqali ma'lumotlaringiz qayta ishlanishiga rozilik bildirasiz.