GH GambleHub

Sağlık kontrol mekanizmaları

1) Neden

Sağlık kontrolleri basamaklı arızalara karşı ilk engeldir: Düğümleri rotasyondan doğru bir şekilde kaldırır, yeniden ödeme fırtınalarını önler, bozulmayı basitleştirir ve iyileşmeyi hızlandırır, SLO'yu korur ve MTTR'yi azaltır.


2) Temel kontrol türleri

Canlılık - süreç "canlı" (kilitlenme/sızıntı/panik yok). Hata - örneği yeniden başlat.
Hazırlık - hizmet, hedef SLO'larla trafiğe hizmet verebilir (havuzlar yükseltilir, önbellek ısıtılır, bağımlı kaynaklar normaldir). Hata - dengeleme dışında tutulur, ancak yeniden başlatılmaz.
Başlangıç - hizmet canlılık/hazırlığa gitmeye hazır (uzun bootstrap, göçler, ısınma). Erken yeniden başlatmalara karşı korur.
Derin sağlık (alana özgü): iş değişmezleri (oran uçtan uca geçer, depozito aktif PSP tarafından yetkilendirilir). Bozulma sinyalleri için kullanılır, ancak hemen yeniden başlatma için kullanılmaz.
Harici/Sentetik: Dışarıdaki aktif pingler (API yolu, ön komut dosyası, PSP/KYC uç noktası) - kullanıcı kullanılabilirliğini ölçer.


3) Örnek tasarım: genel kurallar

1. Ucuz canlılık: dış bağımlılıklara gitmeyin; Olay döngüsünü kontrol et, yığın/FD, bekçi köpeği.
2. SLO tarafından hazırlık: Bakım için gereken yerel kaynakları kontrol ediyoruz (veritabanı havuzları, sıcak önbellek, sınırlar). Dış bağımlılıklar - engellemesiz "hizmet edebilir mi?" Sinyaller.
3. Gecikme bütçesi: Her örneğin kendi SLA'sı vardır (örneğin, ≤100 -200 ms); aşılırsa - "bozulmuş", ancak canlılıkta 5xx değil.
4. Backoff & Jitter: örnek aralıkları 5-15 saniye, zaman aşımı 1-2 saniye, eşzamanlı fırtınaları önlemek için hatalarda üstel gecikme ile.
5. Histerezis: Durum değişikliği için N başarı/hata yanıtı (örn. 'başarıEşik = 2', 'başarısızlıkEşik = 3').
6. Sürüm oluşturma: uç noktalar'/healthz ','/readyz','/startupz 'sabittir; '/health/... altında derin kontroller 'adında çeklerle.
7. No secret ve PII: Cevaplar sadece durum ve kısa kodlardır.
8. Açıklanabilirlik: Alt kontrollerin bir listesi ile JSON: '{"status ": "degraded ", "checks ": [{"name ": "db"," ok": true," latencyMs": 18}, {" name":" psp. eu, ""ok ": false, "reason":" timeout"}]} '.


4) Katmanlara göre derin kontrol örnekleri

4. 1 DB/Önbellek/Depolama

DB: kısa işlem 'SELECT 1' replika ve havuz kontrolünü okumak için; Gecikme/çoğaltma-gecikme eşikleri.
Önbellek: 'GET'/' SET' test tuşu + hit-ratio guard (düşük isabetli uyarı).
Nesne Depolama: Mevcut bir nesnenin HEAD'i (indirme yok).

4. 2 Kuyruklar/Akış

Broker: Ping-topic yayınla + yerel bölüm içinde tüket; tüketici-gecikme eşikleri.
DLQ: Pencere başına ölü harfli mesajlarda artış yok.

4. 3 Harici sağlayıcılar (PSP/KYC/AML)

PSP: hafif auth-probe (parasal olmayan), sözleşme/sertifika/kotaların doğrulanması; Güvenli örnekler yoksa, proxy metrikleri kullanıyoruz (bankalar/GEO tarafından 5-10 dakika içinde yetkilerin başarısı).
KYC/AML: Sağlık-API ve SLA kuyrukları; Bozulma durumunda - alternatif bir akışa/sağlayıcıya geçmek.

4. 4 API/Ön

Sentetikler: EU/LATAM/APAC'da işlem yolu (oturum açma - para yatırma başlatma - "kumda" bahis).
RUM sinyali: JS/HTTP ve LCP/TTFB hatalarının oranı - "dışarıda" tetikler.


5) Platform entegrasyonu

5. 1 Kubernetes/Bulut

'startupProbe' bootstrap (geçişler/önbellek ısınma) korur.
'livenessProbe' minimalist; 'readinessProbe' havuzları/önbelleği/yerel kuyrukları dikkate alır.
Параметры: 'Initial' DelaySeconds ',' periodSeconds ',' timeoutSeconds ',' failureThreshold ',' successThreshold '.
PodDisruptionBudget ve maxUnavailable hazır olmayı düşünüyor.
HPA/KEDA: kuyruk ölçekleme/SLI; Hazırlık, yönlendirmeyi etkiler.

5. 2 Dengeleyiciler/ağ geçitleri/kafes

L7 düzeyinde sağlık yönlendirme (HTTP 200/429/503 semantik).
Outlier detection (envoy/mesh) - havuzdan hata oranı/gecikme yüzdeleri ile çıktı.
Devre kesici: eşzamanlı istekler/bağımlılığa bağlantılar, sağlık sinyalleriyle entegrasyon için sınırlar.

5. 3 Otomatik ölçeklendirme ve bozulma

Hazırlık = YANLIŞ - trafik kaldırılır, ancak pod canlıdır (ısınabilir).
Deep-degrade (PSP down) - zarif mod için özellik bayrakları (örneğin, ödeme yöntemlerini geçici olarak gizleyin, bekleme odasını etkinleştirin).


6) Zaman aşımı ve geri çekilme politikaları

Timeout <SLO budget: Eşzamanlı bağımlılıklar için 'timeout = min (⅓ p99, 1-2s)'.
Idempotence: retrays için zorunlu; Idempotency tuşlarını kullanın.
Üstel gerilik + titreme: eşzamanlı şaft efektlerini önler.
Retray bütçeleri: istek/kiracı başına sınırlar, "yeniden fırtınalara" karşı koruma.


7) Durum sinyalleri ve uyarı

Yeşil/Sarı/Kırmızı: Servis panosundaki özet durumları.
SLO ile yanma oranı uyarıları: hızlı (1 saat) ve yavaş (6-24 saat).
Korelasyon-ipuçları: Yayın/Özellik Bayrağı/Plan Etkinlik Notları.
Otomatik işlemler: "kırmızı" derin kontrol ile - sağlayıcının geri dönüşünü açın, parça örneklemesini artırın.


8) iGaming için akıllı stratejiler

Ödemeye hazır olma: Bahis servisinin hazır olma durumu, PSP yönlendiricisinin durumunu ve bankaların/GEO'nun limitlerini dikkate alır.
Oran/Satır yayınlama: Yayıncıda hazır olma/kenar önbelleğindeki satır kaynak ve dağıtım süresine göre değişir.
Turnuva çivileri: Daha agresif aykırı algılama ve bekleme odası geçici bir politika.


9) Antipatterns

Liveness, hangi veritabanı/PSP gider - kitle harici bir sorun için yeniden başlatır.
Ayırma başlangıcı/hazırlığı/canlılığı olmayan bir "evrensel'sağlık uç noktası.
Backoff/jitter olmadan zor zaman aşımları - retray fırtına.
Histerezis yok - yönlendirme çırpması.
Yeniden başlatmayı tetikleyen derin kontrol (amacı yeniden başlatma değil tanılama ve yönlendirmedir).
Sağlık uç noktalarında gizli 5xx (gerçek durumu maskeleme).


10) Arayüz şablonları

/ startupz> '200 OK {"uptimeSec": ..., "sürüm":"..."}'

Denetimler: init komut dosyaları, geçişler tamamlandı, anahtarlar ve yapılandırmalar yüklendi.

/ healthz (liveness) - '200 OK {"heapOk": true, "fdOk": true, "eventLoop":'tamam "}'

Kontroller: olayların döngüsü, süreç kaynakları, panik/oom bayraklarının yokluğu.

/ readyz (hazır olma)

'200 OK/503 {"canServe ": true, "db ": {"ok ": true, "latencyMs ": 12}, "cache ": {"ok ": true}," queue": {" ok": true," lag": 0}," localQuotan": {" ok": true} '

/ sağlık/ödemeler (derin)

'200/206/503 {"psp. eu ": {" ok ": false," reason ":" timeout "}, psp. alt ": {"ok": true}, "routerMode ":" failover"} '


11) Sağlık devresi kalite ölçümleri (KPI/KRI)

Pod çıkış zamanı 'NotReady'den' Ready'ye (warmup-SLO).
Servis başına çırpma hazırlığı sıklığı.
% yanlışlıkla yeniden başlatılan pod (kök neden - dış bağımlılık).
Sağlık mekanizmalarının rol oynadığı olayların MTTR'si (önce/sonra).
Otomatik yük devretme/özellik bozulması paylaşımı çağrı olmadan.
Sentetiklerin doğruluğu vs RUM (false positives/misses).


12) Uygulama Yol Haritası (4-8 hafta)

Ned. 1-2: kritik yol envanteri; Post-startup/liveness/readiness; Alt kontroller ve histerezis ile JSON yanıtlarını girin.
Ned. 3-4: derin kontroller ekleyin: veritabanı/önbellek/broker; 2-3 GEO'da oturum açma/para yatırma/bahis için sentetikler; / mesh ağ geçidinde aykırı değer algılamasını etkinleştirin.
Ned. 5-6: PSP-fallback и ödemeye hazır olma; Ön taraf için bekleme odası; Gecikme/kuyruklara göre otomatik ölçeklendirme; Yanma oranı ile uyarır.
Ned. 7-8: kaos günleri (PSP/veritabanı kopyalarını devre dışı bırakma), backoff/jitter kontrolü; Zaman aşımı ayarı, PDB; KPI raporu ve düzeltme.


13) Eserler

Sağlık Spec (hizmet başına): kontroller listesi, zaman bütçeleri, histerezis, kırmızı durumu ile eylemler.

Runbooks: "Readiness = FALSE: What are we doing? ", "PSP-fallback: steps and return criteria" (Hazır olma = YANLIŞ: Ne yapıyoruz?)

Yönlendirme Politikası: aykırı-algılama kuralları, devre kesiciler, yüzdelik eşikleri.
Sentetik Oyun Kitabı: senaryolar ve coğrafyalar, SLO sentetikleri, program.
Release Gate: Kırmızı derin kontrol anahtar bağımlılıkları ile serbest bırakma blokları.


Sonuç

İyi tasarlanmış bir sağlık kontrolleri döngüsü, katmanlı bir sinyal sistemidir: proses canlılığı için kolay yaşanabilirlik, trafik hizmeti yeteneği için hazır olma, güvenli başlangıç için başlatma ve yönetilen bozulma ve yönlendirme için etki alanına özgü derin kontroller. Autoscaling, outlier-routing, synthetics ve SLO-alerting ile birlikte, kademeli hata riskini azaltır, MTTR'yi azaltır ve iGaming platformlarının iş açısından kritik yollarını stabilize eder.

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.