GH GambleHub

Rejalashtirish va fon vazifalari

(Bo’lim: Operatsiyalar va Boshqaruv)

1) Vazifasi

Rejalashtiruvchi va fon vazifalari platformaning foydalanishdan tashqari ishlashini ta’minlaydi: davriy hisob-kitoblar, artefaktlarni nashr etish, kliring va navbat repleylari. Maqsadlar - determinizatsiya, uzilishlarga chidamlilik va auditga yaroqlilik.


2) Vazifalar taksonomiyasi

Time-based: jadval boʻyicha (cron/kalendar): kliring, RTP oynalarini yopish, tushirish, arxivlash.
Event-driven: shina triggerlari (PaymentsSettled, PriceListUpdated).
One-off/Ad-hoc: TTL bilan bir martalik joblar.
Long-running: backof/sages, striming kompakshenlari.
Maintenance: kalitlar rotatsiyasi, repekij, indekslar, kesh isitish.


3) Arxitektura (referens)

Komponentlar:

1. Scheduler (control-plane): jadvallar, CAL/cron, xizmat koʻrsatish oynalari, taymzonlar, cheklovlarni saqlaydi.

2. Dispatcher: reja → navbat (per-priority/tenant/region), muddatlar, idempotent kalitlarni qo’yadi.

3. Workers: vazifalar puli ostidagi statik/avtoskeyl; heartbeats, leases.

4. Queue/Bus: FIFO/ustuvorlik, DLQ, kechiktirilgan xabarlar.

5. Locker/Coordination: taqsimlangan blokirovkalar (leases), etakchi elektratsiya (Raft/ZK/Consul).

6. Vault/KMS: JIT sirlari, qisqa TTL.

7. Observability: traces/metrics/logs, dashbordlar, alertlar.

8. Audit/WORM: oʻzgarmas bajarish kvitansiyalari, Merkle kesmalari.

Patternlar: outbox/CDC, idempotency, kompensatsiyalar (saglar), backpressure, circuit-breakers.


4) Jadvallar: cron va taqvimlar

Cron v3: sekund/daqiqa/soat/kun/oy/kun-hafta; «/5 », diapazonlar, ro’yxatlarni qo’llab-quvvatlash.
Taqvim/istisnolar: biznes taqvimi, «sukunat oynalari», bayramlar/DST.
Taymzonlar:’tz’ni vazifada saqlang; tenantni mahalliy vaqt bo’yicha ishga tushirish.
Multiregion: per-region jadvallari yoki drayn/qayta saylangan «yetakchi mintaqa + izdoshlar» nusxalari.


5) Navbatlar, ustuvorliklar, SLA

Ustuvorlik klasslari: P0 (tanqidiy), P1, P2, P3; alohida vorker pullari.
SLA/muddatlar:’must _ start _ by’,’must _ finish _ by’; ruxsatnoma - eskalatsiya/retraj.
Kvotalar va fairness: vazifalar/min/tenant uchun caps, «burstlar» uchun tokenlar, noisy-neighbors izolyatsiyasi.
Kechiktirilgan vazifalar: «oldin emas» (delay/visibility timeout).


6) Raqobatbardoshlik va blokirovka

Leases: avto-uzaytirish bilan ishlashni ijaraga olish (heartbeat); taym-autda - qayta olib qo’yish.
Mutex/semaforlar: per-resurs (masalan, «prays-listni faqat bitta vorker yozadi»).
Chardlash:’tenant/region/hash (key)’; kesh uchun sticky-routing.
Eleksiya yetakchisi: bitta rahbar «tizimli» joblarni (masalan, «barcha RTP derazalarini yopish»), izdoshlar - issiq standby chop etadi.


7) Ishonchlilik: retryalar, idempotentlik, dedup

Idempotent kaliti:’(task_type, business_id, window)’; takrorlash → xuddi shu kvitansiya.
Retrailar: eksponensial back-off + jitter, urinishlar limiti, on-error strategiyasi (retry/cancel/compensate).
Poison-pill: N muvaffaqiyatsizliklardan so’ng DLQga tezkor o’tkazish, egasiga alert.
Dedup: seen-cache (in-memory + KV) TTL oynasida.
Exactly-once effektlari: tranzaksion jurnal/kvitansiyalar orqali nojo’ya ta’sirlarni tasdiqlash.


8) Uzoq muddatli va og’ir vazifalarni boshqarish

Chunking: batchi, check pointlarga bo’lish/davomi.
Time-boxing: CPU/IO/tarmoq egresi; taraqqiyotni saqlab qolgan holda uzilish.
Saga/kompensatsiya: xizmatlararo qadamlar uchun «undo» semantikasi.
Concurrency-caps: turi/tenant/mintaqa uchun bir vaqtning oʻzida bajariladigan vazifalar chegarasi.


9) Kuzatish va metrika

Traces:’trace _ id’, saga qadamlari, tashqi qoʻngʻiroqlar.

Metrics (SLI):
  • Boshlashdan oldin Lag, navbat (uzunligi, yoshi p95).
  • Success Rate, error-rate, retry-rate.
  • Latency p50/p95, time-to-complete.
  • Cost per 1k vazifalar, egress/ingress.
  • DLQ rate, poison-pill rate.
SLO (misol):
  • P0 start ≤ 60 s, P1 ≤ 5 min; Success ≥ 99. 5%; DLQ ≤ 0. 1%; Freshness (opershina) ≤ 30 s p95.

10) Audit va isbotlanganlik

Kvitansiyalar: start/muvaffaqiyat/xato uchun’receipt _ hash’, tanqidiy turlar uchun DSSE-imzolar (to’lovlar, prays-varaqlar, RTP).
WORM: bajarish daftarlari va vazifalar manifestlarini saqlash.
Chain-of-custody: jadvalni kim qo’ydi/ma’qulladi/o’zgartirdi; SoD tekshiruvlari.


11) Xavfsizlik va kirish

RBAC/ABAC/ReBAC: kim yaratadi/ma’qullaydi/ishga tushiradi; SoD: «to’lovni yaratish» ≠ «tasdiqlash».
JIT sirlari: vorker qisqa TTL tokenlarini topshiriqni sotib olish uchun so’raydi.
Izolyatsiya: per-tenant/region/to’rlar pullari; sandbox ijrosi.
PII-gigiyena: niqoblash/tokenlash, boshlang’ich loglarni taqiqlash.


12) FinOps va qiymati

Budjetlar/compute/storage/egress uchun kap-alertlar.
Vorkerlar avtoskalasi navbat bo’yicha va SLO.
Saqlash sinflari: issiq (7-30 kun) → OLAP (6-24 oy) → arxiv.
Cost-aware rejalashtirish: «arzon soatlarda» ishga tushirish oynasi, egress limitlari.


13) Ma’lumotlar modeli (soddalashtirilgan holda)

`schedule` `{id, tenant, region, tz, croncalendar, window, enabled, owner, policy_version}`
`job` `{id, schedule_id?, type, payload_hash, idempotency_key, priority, must_start_by, attempts, status, receipt_hash}`
`lease` `{job_id, worker_id, acquired_at, ttl}`
`run_log` `{job_id, started_at, finished_at, outcome, trace_id, metrics{}, receipts[]}`
`dlq_item` `{job_id, reason, attempts, last_error, owner_notified}`

14) API kontraktlari (boshqaruv/integratsiya)

’POST/schedules’ - jadval (cron/cal, tz, derazalar) yaratish.
’POST/jobs’ - ad-hoc qo’yish; qaytarish’job _ id’,’receipt _ hash’.
’GET/jobs/{ id}’ - maqom/log/kvitansiyalar.
’POST/jobs/{ id }/cancel’ - kompensatsiya bilan bekor qilish.
’GET/queues/stats’ - uzunliklar, laglar, p95.
Вебхуки: `JobStarted`, `JobSucceeded`, `JobFailed`, `JobDroppedToDLQ`, `SLOViolated`.


15) Pleybuklar (namunaviy ssenariylar)

Retry-storm: Global bek-offni yoqish, qaramlik taymautlarini ko’tarish, circuit-breaker, batchlarni maydalash.
DLQ ko’chkisi: qabul qilishni to’xtatish, DLQni tahlil qilish, yangi vazifalarni bufer qilish.
Peshqadam yiqildi: qayta saylash, «ikki marta nashr etish» ni idempotentlik bo’yicha tekshirish, audit.
Provayder (PSP/KYC): zaxiraga yo’nalish, polling/vebxuk chastotasini pasaytirish, tranzaksiyalarni karantinga o’tkazish.
Vorker sirlarining tarqalishi: kalitlarni chaqirib olish, rotatsiya, 30 kun ichida «g’ayritabiiy» ishga tushirishlarni qidirish, huquqlarning g’azablanishi.


16) iGaming/fintech xususiyatlari

To’lovlar/to’lovlar: kvitansiyalar bilan asinxron joblar, «kulrang» tranzaksiyalar karantini, bobosi bilan navbatlar takrorlanishi.
RTP oynalar/limitlar: taqvim bo’yicha yopish, kuzatiladigan vs nazariy RTP, drift paytida avto-pauza promo.
Prays-listы/FX/Tax: jadval bo’yicha nashrlar, artefaktlarning versiyalari, keshning fors-nogironligi.
Affiliates: konversiyalarni solishtirish, vebxuklarning dedupi, dalolatnomalar/imzolar, nizolar bo’yicha eskrou.


17) Sifat metrikasi (to’plam namunasi)

Schedule Adherence: oynada boshlangan vazifalar ulushi ≥ 99%.
Queue Lag p95: P0 ≤ 60 s, P1 ≤ 5 min.
Success/Retry/DLQ Rate: ≥ 99. 5% / ≤ 0. 4% / ≤ 0. 1%.
Idempotency Errors: ≤ 0. 01%.
Cost/1k jobs va Egress/job - budjet doirasida.
Audit Completeness: kvitansiyalar bilan 100% tanqidiy vazifalar.


18) RACI

ViloyatRACI
Rejalashtirish arxitekturasiPlatform/SRECTOData, SecurityProduct
Siyosat/SoD/kalendarCompliance/IAMCCO/CISOLegal, OpsHamma
Kuzatish/SLOSREHead of EngData, FinOpsSupport
Iqtisodiyot/kvotalarFinOpsCFO/CTOSRE, ProductBU Leads
Tanqidiy pleybuklarIR TeamCOOPartners, LegalAudit

19) Joriy etish chek-varaqasi

  • Vazifalar, ustuvorliklar va SLA sinflarini tanlash; taqvim va taymzonlarni belgilash.
  • «Scheduler/Dispatcher/Queue/Workers» ni yetakchi elektr energiyasi va chardlash bilan joylashtirish.
  • Idempotentlik, retraj, DLQ, kompensatsiya (sage) kiriting.
  • Ishchilar uchun RBAC/ABAC/ReBAC, SoD va JIT sirlarini moslash.
  • Traces/metrics/logs, dashbordlar va alertlarni kiritish; SLO и error-budget.
  • Muhim turlar uchun imzolangan kvitansiyalar (DSSE) va WORM jurnallari.
  • Avtoskeyl va kap-alertlar qiymati bo’yicha (compute/storage/egress).
  • Pleybuklar: retry-storm, DLQ-ko’chki, rahbarning ishdan chiqishi, provayderning degradatsiyasi.
  • Testlar: Har bir pleybuk uchun GameDay, kechikish/xato in’ektsiyalari.
  • Jadvallar, navbatlar va avtomatlashtirishning ROI to’siqlarini muntazam ravishda yig’ish.

20) FAQ

Nega cron yetarli emas?
Navbat, idempotentlik, blokirovka va auditsiz cron uzilishlar va vaqt zonalarida buziladi.

Time-based va event-drivenni birlashtirish mumkinmi?
Ha: cron - catch-up uchun sug’urta; voqealar - reaktivlik uchun.

«Bir kun» ga qanday erishish mumkin?
Kalit bo’yicha dedup, tranzaksion effektlar jurnali, kvitansiyalar va idempotent nojo’ya ta’sirlar.

«Uzoq» joblar bilan nima qilish kerak?
Chank, chekpindlar, time-boxing, to’xtatish va davom ettirish imkoniyati.

Qanday qilib byudjetni yemang?
Navbat bo’yicha avtoskeyl va SLO, og’ir joblar uchun arzon soatlar, egress/compute qattiq qopqoqlari.


Xulosa: Rejalashtirish va fon vazifalari - bu platformaning ishlab chiqarish konveyeri. Jadvallar va navbatlar, idempotentlik, blokirovka va kuzatish, kvitansiyalar/audit, tenantlarni izolyatsiya qilish va FinOps-nazoratni qo’shish orqali siz har qanday mintaqa va yuklarda oldindan aytib bo’ladigan bajarish muddatlarini, tezkor recovery va yuridik jihatdan bardosh berilgan operatsiyalarni olasiz.

Contact

Biz bilan bog‘laning

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

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.