Fintech'te Micro Socket
Fintech, gerçek zamanlı fiyat, risk, ödeme ve uyumluluk verisi için socket'e yoğun bağımlıdır. Micro Socket bu alanda özellikle anlamlıdır.
Neden Micro Socket?
| Gereksinim | Micro Socket Karşılığı |
|---|---|
| Ödeme/emir tek sefer işlensin | I₂: messageId/idempotencyKey ile dedup |
| Fiyat ve emir sırası bozulmasın | I₃: seqNo + replay |
| Kesintide veri kaybı olmasın | I₆: RESUME + gap replay |
| Müşteri sadece kendi verisine baksın | I₁: ACL topic–kullanıcı eşlemesi |
| Gecikme hedefleri (ticaret/risk) | I₅: p50/p95/p99 SLO |
Kanallar (Topic) Örnekleri
prices.*— Fiyat akışı (BTC, ETH, …)risk.alerts— Risk uyarılarıorders— Emir gönderme (write) ve onay/event (read)payments— Ödeme bildirimlericompliance.alerts— Uyumluluk uyarıları
İstemci, her biri için ayrı micro socket veya tek bağlantıda ayrı topic abonelikleri kullanabilir.
Ödeme ve İdempotency
Fintech'te her ödeme/emir komutu benzersiz idempotency key ile gelir. Gateway'te I₂ sayesinde aynı key ile ikinci istek işlenmez; client'a ACK(duplicate) döner.
javascript
// Client: Her ödeme isteğinde benzersiz key
const idempotencyKey = `pay-${userId}-${Date.now()}-${uuid()}`;
client.publish('payments', { amount, currency, to }, idempotencyKey);Test Hedefleri (Fintech)
- Çift işlem oranı: 0%
- Sıralama ihlali: 0%
- Yetkisiz erişim: 0 (tüm denemeler red)
- p99 gecikme: SLO altında (örn. < 100ms)
- Resume sonrası eksiksiz veri: ≥ 99%
Daha fazla: Test Matrisi, İnvariant'lar.