GH GambleHub

Operasyonlar ve Yönetim Otomatik iş akışları

Otomatik iş akışları

1) Neden ihtiyacınız var

Otomatik iş akışları manuel işlemleri azaltır, "fikirden paraya zamanı" hızlandırır ve hata riskini azaltır. IGaming/fintech'te para yatırma/çekme, KYC/AML, bonus/jackpot yönetimi, içerik güncellemeleri, olay reaksiyonları ve arka ofis görevleri için kritik öneme sahiptir.

Hedefler:
  • Tetikleyiciden sonuca kadar sağlam, şeffaf bir şekilde gözlemlenen süreçler.
  • Süreç SLO'ları tarafından tahmin edilebilen minimum manuel adımlar.
  • Hata kontrolü: geri alma, telafi edici eylemler, net yükselmeler.
  • Olaylara göre ölçeklendirme ve fırtınalar ve kopyalar olmadan yükleme.

2) Temel terminoloji

İş akışı (WF): Bir iş sonucunu elde etmek için bir adımlar zinciri (görevler).
Orkestrasyon: Merkezi koordinatör adımları ve sıralarını yönetir.
Koreografi: adımlar olaylara tepki verir, "merkezi beyin" yoktur.
Tazminat: Kısmi başarısızlıkta ters eylemler (sagalar).
HITL (Human-in-the-loop): WF içinde kontrollü "manuel" çözümler.
Sürecin SLO'su: belirli bir WF'nin tamamlanma/başarı süresini hedefleyin (örneğin, "mevduatın %95'i 3 saniye ≤").


3) Nereye başvurulur (örnekler)

Ödeme akışı: para yatırma, dolandırıcılık önleme, muhasebeye gönderme, bildirimler.
KYC/AML: Belgelerin toplanması, sağlayıcılar tarafından kontrol edilmesi, uygunluğun arttırılması.
İçerik/limit yönetimi: oyunları, kotaları, coğrafi kuralları yayınlamak.
Bonuslar/ikramiyeler: tahakkuklar, kesintiler, koşulların hesaplanması, ödemeler.
Olaylar: otomatik tanılama, kısaltılmış kontrol listeleri, iletişim.
Veri/ETL: rapor yüklemeleri, mutabakat, arşivleme.


4) Orkestrasyon vs Koreografi

Orkestrasyon, karmaşık şube mantığı, katı SLO'lar, açık son tarihler/zaman aşımları, görsel bir "süreç haritası" gerektiğinde uygundur.
Koreografi - ne zaman: yüksek olay, zayıf bağlantı, bir olayın birçok bağımsız tüketicisi.

Melez: Uzun ömürlü destanlar bir orkestratör tarafından kontrol edilir ve yerel reaksiyonlar olaylarla gerçekleştirilir.


5) Mimari ilkeler

Idempotency: Her adım güvenli bir şekilde tekrarlanmalıdır (idempotency-key, dedup by message-ID).
Açık zaman aşımları ve geri çekilmeler: backoff + jitter, sınırları deneyin, yalnızca güvenli hatalar için geri çekilir.
Telafiler (sagalar): Kısmi başarısızlıkta zincir geri dönüşleri.
Adımların izolasyonu: bölme (bireysel havuzlar/dış downstreams sınırları).
Sözleşmeler: Tüm harici aramalar için OpenAPI/AsyncAPI, CDC testleri.
WF sürüm oluşturma: eski örneklerin "kütle" damlaları olmadan girdi/çıktı verilerinin şemasını değiştirme.


6) Olay ve tetikleme modeli

Tetikleme türleri:
  • Domain olayı ('depozito. Talep edildi '),
  • program (cron),
  • Manuel başlatma (operatör/destek),
  • uyarıdan sinyal (olay-otomatik-iş akışı).
  • Bağlam: korelasyon 'trace _ id', 'workflow _ instance _ id', kullanıcı/bölge, phicheflag sürümü.
  • Ucuz giriş filtreleri: erken doğrulama ve take'lerin kesilmesi.

7) Adım tasarımı (görevler)

Her adım açıklanmıştır: giriş, çıkış, SLO, zaman aşımı, girişimler, geri ödeme koşulları, tazminat, haklar/sırlar.

Sözde adım açıklaması:

task: call_psp input: { user_id, amount, currency, idempotency_key }
timeout: 200ms retries:
max: 2 on: [5xx, connect_error]
backoff: exponential jitter: true compensation: reverse_authorization secrets: [PSP_TOKEN]
sla: p99 <= 300ms

8) Tazminat ve destanlar

Yerel işlem + olay "niyeti kaydet - yayınla olayı".
Tazminat: yetkilendirmenin iptali, bonusun iadesi, bakiyenin yeniden hesaplanması, biletin kapatılması.
Tazminat idempotans: tekrarlanan iptal değişmezleri kırmamalıdır.


9) Güvenlik ve sırlar

KMS/Secrets Manager: belirteç depolama, rotasyon, rol erişimi.
En az ayrıcalık: WF motoruna tam olarak doğru kapsamlar verilir.
Webhook/Kolbek imzası: HMAC/JWS, zaman damgası kontrolü.
Veri politikaları: Günlüklerde/izlerde PII maskeleme, şifreleme.


10) Gözlemlenebilirlik ve SLO

Süreç metrikleri: 'workflow _ started/completed', 'succcess _ rate', 'aborted', 'mean/p95/p99 duration', hanging instances, 'dead letter'.
Adım metrikleri: 'Task _ latency', 'error _ rate', 'retry _ count', 'open _ circuit', 'cost _ per _ 1k _ calls'.
İzler: her adım için yayılma alanı, etiketlerin iş akışı. İsim ',' adım ',' girişim '.

SLO: örneğin, "Mevduatların %95'i 3 saniye ≤, %99'u 5 saniye ≤; İptal ≤ 0. %3/gün"

Panolar: termal adım haritası, darboğazlar, bağımlılık haritaları.


11) Devre İçinde İnsan (HITL)

Kriterler: tartışmalı durumlar (risk/AML), büyük ödemelerin manuel olarak onaylanması.
Son tarihler: Bir karar için bekleyen zaman aşımı, hatırlatıcılar/eskalasyon.
Denetim: kim/ne zaman/ne karar verdi, gerekçe, biletli paket.


12) Değişim Yönetimi ve Bültenleri

İş akışı sürümleri: Paralel olarak 'v1've' v2 '; Örnek geçişi mümkün değildir - eski örnekleri doğal olarak, yeni trafiği 'v2'ye sonlandırın.
Kanarya trafiği: %1 - %10 - %100, metriklerin karşılaştırılması 'başarı/p95/iptal'.
Ficheflags: Bir önceki adım/şube uygulamasına hızlı bir geri dönüş.
CDC/sözleşmeler: Adım değişikliklerinin tüketicileri/sağlayıcıları kırmasını önlemek için CI'daki kapı.


13) Test etme

Birim adımları: pozitif/negatif + idempotency.
Sözleşme testleri: moka/sahne sağlayıcıya karşı.
WF simülasyonları: mutlu yol + zaman aşımları, 4xx/5xx, "yavaş sağlayıcı", olayların kaybı, kısmi hatalar.
Oyun günleri: Aksaklıkların enjeksiyonu (PSP/KYC düşüşü, kuyruk gecikmesi, kapalı kırıcı).
Replay: Göçleri doğrulamak için tarihsel olayları tekrar oynatın.


14) Olaylar ve otomatik reaksiyonlar

Olay otomatik iş akışı: metrikleri toplama, aşağı akışları kontrol etme, bildirimler, geçici çözüm hazırlama (sağlayıcı değiştirme, bozulma).
Çalışma kitabı adımları: Manuel iptal/zorlama-tamamlamaya izin verildiğinde asılı örnekleri nasıl "çözülür".


15) Maliyet yönetimi

Kotalar ve "yumuşak sınır": pahalı adımlar/sağlayıcılar üzerindeki sınırlar.
Önbellek/dedup: Gereksiz yere tekrarlanan harici aramalar yapmayın.
Raporlar: 'Cost _ per _ 1k _ workflows', WF türüne göre "cost of success".


16) Mini şablon iş akışı (sözde YAML)


workflow: deposit_v1 trigger:
event: deposit.requested filters: [amount > 0, currency in [USD,EUR,TRY]]
sla:
p95_ms: 3000 abort_rate_daily: 0.3%
steps:
- name: reserve_funds timeout_ms: 150 retries: {max: 2, on: [5xx, connect_error], backoff: exponential, jitter: true}
compensation: release_reserve
- name: call_psp timeout_ms: 200 retries: {max: 2, on: [5xx, connect_error]}
circuit_breaker: {error_rate: 0.05, window_s: 10, open_s: 30}
- name: post_ledger type: async topic: ledger.post
- name: notify_user channel: push hitl:
when: amount > 10000 or risk_score > 0.8 timeout_m: 30 escalate_to: "compliance@oncall"
observability:
emit_metrics: true trace: true security:
secrets: [PSP_TOKEN, PUSH_API_KEY]

17) Retray ve zaman aşımı politikaları (öneriler)

Adım zaman aşımı = gecikme bütçesinin %70-80'i.
Retrai ≤ 2-3, sadece idempotent işlemler ve ağ arızaları için.
Jitter zorunludur; Bir follbeck olmadan darboğaz zamanaşımlarından çekilme yasağı.
Tazminat - ayrı adımlar olarak, aynı zamanda idempotent.


18) Gösterge panoları (minimum)

WF Genel Bakış: başlatır/başarı/iptal, p95/p99 süresi, askılar/dedeler.
Adım Drilldown: Üst yavaş/hata adımları, geri çekilmeler, açık kırıcılar.
Sağlayıcı Paneli: giden p95/hata oranı/kotalar/maliyet.
HITL Kurulu: "bekleyen karar", zaman çizelgesi, uyumluluk SLA'ları.


19) Uygulama kontrol listesi

  • Anahtar WF haritası ve sahipleri (on-call, sohbet, repo).
  • Adımların açıklaması: giriş/çıkış, SLO, zaman aşımları, geri çekilmeler, tazminatlar, sırlar.
  • OpenAPI/AsyncAPI + CDC sözleşmeleri.
  • Idempotence/girişte ve merdivenlerde deadup.
  • Gösterge panoları, izler, uyarılar (SLO işlemi ve adımlar).
  • WF sürümleri için Canary + phicheflags.
  • Runbook: Nasıl "tedavi" asılı/kısmen yürütülen WFs.
  • Bozunma planı: alternatif sağlayıcılar,'ağır "dalları kapatmak.
  • Gizli/erişim/denetim politikaları.
  • Oyun günleri/xaoc-senaryoları bir kez sprint.

20) Uyarı örnekleri (fikirler)


ALERT WorkflowSLOBreached
IF workflow_p95_duration_ms{name="deposit_v1"} > 3000 FOR 15m
LABELS {severity="critical", team="payments"}

ALERT WorkflowAbortRateHigh
IF rate(workflow_aborted_total{name="deposit_v1"}[30m]) > 0.005
LABELS {severity="warning", team="payments"}

ALERT StepRetryStorm
IF step_retry_count{name="call_psp"} > 2 baseline_1w FOR 10m
LABELS {severity="warning", team="integrations"}

ALERT StuckInstances
IF workflow_in_progress_age_p95_m{name="kyc_v2"} > 60
LABELS {severity="warning", team="risk"}

21) Anti-desenler

100'den fazla adım ve sert bağlantı ile "büyük monolitik WF" - zor ve gürültülü kırar.
İdempotent olmayan işlemler için retrays (çift ücret/ücretler).
Kullanıcının isteğinin "yaşamdan daha uzun" zaman aşımları - cellat ve "zombiler".
Tazminat eksikliği - manuel düzeltmeler ve uzun post-mortemler.
Hiçbir WF sürümü yok - sürümler eski örnekleri kırar.
Döndürme ve denetim olmadan yapılandırmalar/değişkenler içindeki sırlar.


22) İş Akışı Kalitesi KPI

WF türüne göre başarı oranı ve İptal oranı.
P95/p99 adımların ve sürecin süresi.
Süreç olaylarında MTTD/MTTR.
Fırtına sayısını/ayını yeniden deneyin (hedef 0).
1k WF başına maliyet ve "başarı maliyeti".
Otomasyonun payı: HITL olmayan vakaların %'si.


23) Hızlı başlangıç (varsayılanlar)

3-5 kritik WF ile başlayın (para yatırma, çekme, KYC).
Orkestrasyon uzun ömürlü destanlar; yerel tepkiler - olaylar.
Adım zaman aşımı ≤ Bütçenin %80'i; Retrai ≤ 2 ile backoff + jitter.
Tazminatlar yazılı olarak belirlenir ve test edilir.
Karşılaştırma panosu ile trafiğin %5-10'u için kanaryayı açın.
Her WF'nin bir sahibi, bir runbook'u ve SLO uyarıları vardır.


24) SSS

S: Ne seçmeli: orkestratör veya etkinlikler?
C: Görsel bir haritaya ihtiyacınız varsa, son tarihler ve uzun sagalar bir orkestratördür. Olaylara ve birçok tüketiciye basit tepkiler verilirse, koreografi. Genellikle en iyi seçenek bir hibrittir.

S: Kopyalardan nasıl kaçınırsınız?
C: WF girişinde idempotency-key, 'message _ id'ile dedup ve "seen-events'in depolanması. "Adımlar idempotenttir.

S: Devrede bir adama ihtiyacı var mı?
C: Evet, tartışmalı/pahalı durumlar için. Ancak, daha iyi otomasyon ve kurallar yoluyla HITL payını ölçün ve azaltın.

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.