GH GambleHub

Жоспарлаушы және фондық тапсырмалар

(Бөлім: Операциялар және Басқару)

1) Мақсаты

Жоспарлаушы және фондық міндеттер платформаның пайдаланушыдан тыс жұмысын қамтамасыз етеді: кезеңдік есептеулер, артефактілерді жариялау, клиринг және кезектердің репликасы. Мақсаты - детерминділік, іркілістерге төзімділік және аудитке жарамдылық.


2) Міндеттердің таксономиясы

Time-based: кесте бойынша (cron/күнтізбе): клиринг, RTP терезелерін жабу, түсіру, мұрағаттау.
Event-driven: шинадан триггерлер (PaymentsSettled, PriceListUpdated).
One-off/Ad-hoc: TTL бар бір реттік джобтар.
Long-running: бэкоф/сагалар, стримингтік компакшендер.
Maintenance: кілттерді ротациялау, репэкидж, индекстер, кэшті жылыту.


3) Сәулет (референс)

Компоненттер:

1. Scheduler (control-plane): кестелерді, CAL/cron, қызмет көрсету терезелерін, таймзондтарды, шектегіштерді сақтайды.

2. Dispatcher: жоспар → кезек (per-priority/tenant/region), мерзімдік, демпотенттік кілттерді қояды.

3. Workers: тапсырмалар пулына статикалық/автоскейл; heartbeats, leases.

4. Queue/Bus: FIFO/басымдық, DLQ, кейінге қалдырылған хабарлар.

5. Locker/Coordination: таратылған блоктау (leases), көшбасшы электр (Raft/ZK/Consul).

6. Vault/KMS: JIT құпиялары, қысқа TTL.

7. Observability: traces/metrics/logs, дашбордтар, алерталар.

8. Audit/WORM: өзгермейтін орындалу түбіртектері, Merkle-тіліктер.

Паттерндер: outbox/CDC, idempotency, өтемақылар (сағалар), backpressure, circuit-breakers.


4) Кестелер: cron және күнтізбелер

Cron v3: секунд/минут/сағат/күн/ай/күн-апта; «/5 », диапазондарды, тізімдерді қолдау.
Күнтізбелер/ерекшеліктер: бизнес-күнтізбесі, «тыныштық терезелері», мерекелер/DST.
Таймзондтар: 'tz' дегенді тапсырмада сақтаңыз; жергілікті уақыт бойынша тенантты іске қосу.
Мультирегион: дрейндік/қайта сайлаумен per-region немесе «жетекші өңір + фолловерлер» кестелерінің көшірмелері.


5) Кезектер, басымдықтар, SLA

Басымдық сыныптары: P0 (критикалық), P1, P2, P3; воркерлердің жеке пулдары.
SLA/мерзім: 'must _ start _ by', 'must _ finish _ by'; рұқсаттама - эскалация/ретрай.
Квоталар және fairness: тапсырмаларға caps/мин/тенант, «бурстарға» токендер, noisy-neighbors оқшаулау.
Кешіктірілген тапсырмалар: «бұрын емес» (delay/visibility timeout).


6) Бәсекелестік және бұғаттау

Leases: авто-ұзартумен жұмысты жалға алу (heartbeat); тайм-аут бойынша - қайта алу.
Mutex/семафорлар: per-ресурс (мысалы, «прайс-парақ х тек бір воркер жазады»).
Шардарлау: бойынша 'tenant/region/hash (key)'; sticky-routing кэш және деректер локальдары үшін.
Электр көшбасшысы: бір көшбасшы «жүйелік» джобтарды жариялайды (мысалы, «барлық RTP терезелерін жабу»), фолловерлер - ыстық standby.


7) Сенімділік: ретра, теңсіздік, дедуп

Теңсіздік кілті: '(task_type, business_id, window)'; қайталаулар → сол түбіртек.
Ретраилер: экспоненциалдық бэк-офф + джиттер, әрекеттер лимиті, on-error (retry/cancel/compensate) стратегиясы.
Poison-pill: N іркілістерден кейін DLQ-ға жылдам аудару, иесіне алерт.
Dedup: seen-cache (in-memory + KV) TTL терезесінде.
Exactly-once әсерлері: транзакциялық журнал/түбіртектер арқылы жанама әсерлерді растау.


8) Ұзақ және ауыр міндеттерді басқару

Chunking: батчиге бөлу, чек пункттері/жалғасы.
Time-boxing: CPU/IO/желілік egress; прогресті сақтай отырып үзу.
Сағалар/өтемақылар: қызмет аралық қадамдар үшін «undo» семантикасы.
Concurrency-caps: түрі/тенантты/өңірге арналған бір уақыттағы тапсырмалар лимиттері.


9) Бақылау және метрика

Traces: 'trace _ id', саганың қадамдары, сыртқы қоңыраулар.

Metrics (SLI):
  • Lag басталғанға дейін, кезек (ұзындығы, жасы p95).
  • Success Rate, error-rate, retry-rate.
  • Latency p50/p95, time-to-complete.
  • Cost per 1k тапсырмалар, egress/ingress.
  • DLQ rate, poison-pill rate.
SLO (мысал):
  • P0 старт ≤ 60 с, P1 ≤ 5 мин; Success ≥ 99. 5%; DLQ ≤ 0. 1%; Freshness (опершина) ≤ 30 с p95.

10) Аудит және дәлелдеу

Түбіртектер: 'receipt _ hash' бастауға/табысқа/қатеге, сыни түрлерге арналған DSSE қолтаңбалары (төлемдер, прайс-парақтар, RTP).
WORM: Орындау логтары мен тапсырмалар манифестін сақтау.
Chain-of-custody: кестені кім қойды/мақұлдады/өзгертті; SoD тексеру.


11) Қауіпсіздік және қол жетімділік

RBAC/ABAC/ReBAC: кім жасайды/мақұлдайды/іске қосады; SoD: «төлем жасау» ≠ «бекiту».
JIT-құпиялар: воркер тапсырманы сатып алу бойынша қысқа TTL токендерін сұратады.
Оқшаулау: воркер пулы per-tenant/region/тор; sandbox орындау.
PII-гигиена: бүркемелеу/токендеу, бастауышты логикалауға тыйым салу.


12) FinOps және құны

Бюджеттер/compute/storage/egress.
Кезек бойынша воркерлердің автоскейлі және SLO.
Сақтау сыныптары: ыстық (7-30 күн) → OLAP (6-24 ай) → мұрағат.
Cost-aware жоспарлау: «арзан сағаттарда» іске қосу терезесі, egress лимиттері.


13) Деректер моделі (оңайлатылған)

`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 келісімшарттары (басқару/интеграция)

'POST/schedules' - кесте жасау (cron/cal, tz, терезелер).
'POST/jobs' - ad-hoc қою; 'job _ id', 'receipt _ hash' қайтарыңыз.
'GET/jobs/{ id}' - мәртебесі/журналы/түбіртегі.
'POST/jobs/{ id }/cancel' - өтемақымен болдырмау.
'GET/queues/stats' - ұзындықтар, лагтар, p95.
Вебхуки: `JobStarted`, `JobSucceeded`, `JobFailed`, `JobDroppedToDLQ`, `SLOViolated`.


15) Плейбуктер (типтік сценарийлер)

Retry-storm: жаһандық бэк-оффты қосу, тәуелділік таймауттарын көтеру, circuit-breaker қосу, батчаларды ұсақтау.
DLQ-көшкін: қабылдауды тоқтату, DLQ талдауға басымдық беру, жаңа тапсырмаларды буферлеу.
Көшбасшы құлдырады: қайта сайлау, «қосарлы жарияланымдарды» демпотенттілік бойынша верификациялау, аудит.
Провайдер (PSP/KYC): резервке бағыт, polling/webhook жиілігін төмендету, транзакцияларды карантинге ауыстыру.
Воркер құпияларының жылыстауы: кілттерді кері қайтарып алу, ротация, 30 күн бұрын «аномальды» іске қосуларды іздеу, құқықтарды жылжу.


16) iGaming/финтех ерекшелігі

Төлемдер/төлемдер: түбіртектері бар асинхронды джобтар, «сұр» транзакциялар карантині, дедуппен кезек репликалары.
RTP терезелері/лимиттері: күнтізбе бойынша жабу, бақыланатын vs теориялық RTP, дрейф кезінде промо авто-пауза.
Прайс-парақтар/FX/Tax: кесте бойынша жарияланымдар, артефактілердің нұсқалары, кэштің форс-мүгедектігі.
Аффилиаттар: конверсияларды салыстыру, вебхуктардың дедупы, даулар бойынша актілер/қолтаңбалар, эскроу.


17) Сапа өлшемдері (теру үлгісі)

Schedule Adherence: терезеде басталған тапсырмалардың үлесі 99% ≥.
Queue Lag p95: P0 ≤ 60 с, P1 ≤ 5 мин.
Success/Retry/DLQ Rate: ≥ 99. 5% / ≤ 0. 4% / ≤ 0. 1%.
Idempotency Errors: ≤ 0. 01%.
Cost/1k jobs және Egress/job - бюджет шегінде.
Audit Completeness: түбіртектермен 100% сындарлы тапсырмалар.


18) RACI

АумақRACI
Жоспарлау архитектурасыPlatform/SRECTOData, SecurityProduct
Саясат/SoD/күнтізбеCompliance/IAMCCO/CISOLegal, OpsБарлығы
Бақылау/SLOSREHead of EngData, FinOpsSupport
Экономика/квоталарFinOpsCFO/CTOSRE, ProductBU Leads
Күрделі ойнатқыштарIR TeamCOOPartners, LegalAudit

19) Енгізу чек-парағы

  • Тапсырмалар класын, басымдықтарды және SLA бөлектеу; күнтізбелер мен таймзондтарды анықтау.
  • Scheduler/Dispatcher/Queue/Workers-ді жетекші электрмен және шардировкамен орналастыру.
  • Теңсіздікті, ретрацияны, DLQ, өтемақыларды (сағаларды) енгізу.
  • RBAC/ABAC/ReBAC, SoD және JIT құпияларын воркерлер үшін теңшеу.
  • traces/metrics/logs, дашбордтар мен алерттерді қосу; SLO и error-budget.
  • Сындарлы типтерге арналған қол қойылған түбіртектер (DSSE) және WORM журналдары.
  • Құны бойынша автоскейл және кап-алерта (compute/storage/egress).
  • Ойнатқыштар: retry-storm, DLQ-көшкін, көшбасшының бас тартуы, провайдердің тозуы.
  • Тесттер: әрбір ойнатқыш бойынша GameDay, кідірістер/қателер инъекциялары.
  • Кестелерді, кезектердің үйінділерін және ROI автоматтандыруды үнемі ревизиялау.

20) FAQ

Неге cron жеткіліксіз?
Кезексіз, теңсіздіксіз, блоктаусыз және аудитсіз cron іркілістерде және уақыт белдеулерінде бұзылады.

time-based және event-driven біріктіруге бола ма?
Иә: cron - catch-up үшін сақтандыру; оқиғалар - реактивтілік үшін.

«Бірте-бірте» қалай қол жеткізуге болады?
Кілт бойынша дедуп, әсерлердің транзакциялық журналы, түбіртектер және демпотенттік жанама әрекеттер.

«Ұзақ» джобтармен не істеу керек?
Чанк, чекпоинттер, time-boxing, үзу және жалғастыру мүмкіндігі.

Бюджетті қалай «жеуге» болмайды?
Кезек бойынша автоскейл және SLO, ауыр джобтарға арналған арзан сағаттар, egress/compute қатты қақпақтары.


Түйіндеме: Жоспарлаушы және фондық міндеттер - бұл платформаның өндірістік конвейері. Кестелер мен кезектерді, демпотенттілікті, бұғаттауды және бақылауды, түбіртектерді/аудитті, тенанттарды оқшаулауды және FinOps-бақылауды қоса отырып, сіз болжамды орындау мерзімдерін, жылдам recovery және кез келген өңірлер мен жүктемелерде заңды түрде сақталған операцияларды аласыз.

Contact

Бізбен байланысыңыз

Кез келген сұрақ немесе қолдау қажет болса, бізге жазыңыз.Біз әрдайым көмектесуге дайынбыз!

Интеграцияны бастау

Email — міндетті. Telegram немесе WhatsApp — қосымша.

Сіздің атыңыз міндетті емес
Email міндетті емес
Тақырып міндетті емес
Хабарлама міндетті емес
Telegram міндетті емес
@
Егер Telegram-ды көрсетсеңіз — Email-ге қоса, сол жерге де жауап береміз.
WhatsApp міндетті емес
Пішім: +ел коды және номер (мысалы, +7XXXXXXXXXX).

Батырманы басу арқылы деректерді өңдеуге келісім бересіз.