Webhook relay sunucum kapaliydi iki gun 7600 TCP timeout auto-pause — ZZ F2 (PR #593)
Sanliurfa Eyyubiye 46-yas Veysel Boz Boz Cigkofte ve Lahmacun 18-yil 2-sube Balikligol turistik + Eyyubiye merkez 90-koltuk Urfa cigkofte acili mercimekli narli + Sanliurfa lahmacun tas firin + kunefe kadayif gunluk yogurt thMenu Platinum 3-yil. Kendi gelistirdigi Node.js ERP relay Hetzner Helsinki VPS thMenu webhook → relay HTTPS → eski POS SOAP 2016 legacy Turk firmasi koprulu 3-yil sorunsuz. 17 Mayis Cumartesi Hetzner planli bakim VPS migrate IP degisikligi Selcuk Bey gormus bilgilendirmemis DNS A record TTL 24-saat sabit IP eski olu IP'ye cozumlendi TCP connect bile establish olmuyor. Pazar ogleden sonra 142 siparis POS'a dusmuyor mali kapanis manuel re-feed. Support engineering 20dk Veysel Bey biz size webhook gonderiyoruz son 48-saat 7624 retry attempt hepsi ECONNREFUSED veya ETIMEDOUT relay'e TCP connection establish edemiyoruz. Exponential backoff 1dk-60dk max delivery basina 24-saat ama her timeout yeni retry 48-saat 7624 attempt + Worker CPU yakti + D1 log table'a yazdi. Eleme SSL cert Lets Encrypt-otomatik 30-gun gecerli; firewall rule Selcuk kontrol degismemis; DDoS request log gelmiyor. Hetzner email IP degisebilir uyari Selcuk gormus onemsenmemis. DNS panel eski A record 6-saat TTL kalmis hizlica guncellendi 5-dakika propagate webhook geri akmaya basladi. Engineering yapisal boslugu fark etti TCP-timeout consecutive yuksek receiver tamamen olmus geçici hata degil tekrar denemek anlamsiz auto-pause gerekiyor. PR #593 ZZ F2 fix 3-katman Layer 1 webhook_subscriptions 2 yeni kolon consecutive_tcp_timeouts INTEGER DEFAULT 0 + auto_paused_at TEXT NULL dispatcher TCP-timeout/ECONNREFUSED/DNS resolution failure network-level failure counter artirir 4xx/5xx HTTP response artirmaz farkli application-level error 2xx counter sifirlanir. Layer 2 counter >= 50 atomik UPDATE webhook_subscriptions SET status='paused_unreachable' auto_paused_at=now() WHERE id=? AND consecutive_tcp_timeouts>=50 OCC pattern race-condition imkansiz operator email Hi your webhook subscription has been auto-paused after 50 consecutive TCP timeouts. Layer 3 operator dashboard Paused Webhook Subscriptions ayri bolum Re-enable buton counter sifirlanir status active Test connection buton gercek test HTTPS request response 2xx yesil tik X kirmizi manuel test. Worker CPU + D1 storage savings 50-attempt threshold aylik 12000 bos retry kurtulduk Worker billing ~%3 azaldi kucuk ama anlamli. Production audit 90-gun 5000+ attempt 0 success 5 subscription 3 kapali restoran + 2 aktif fix re-enable. Bizim Pazar 142 siparis SQL replay POS dustu mali kapanis sikinti yok Webhook Health Status widget eklendi dashboard real-time son N saat basari orani DNS degisiklik veya sunucu maintenance oncesi widget kontrol. Krzysztof Wojcik Krakow Kazimierz 38-yas Stara Synagoga Restauracja Polonya-Yahudi czulent kishke golabki pierogi 58-koltuk 9-yil Linode Frankfurt VPS Subat sonu DDoS Linode IP rotation policy DNS 36-saat propagate gecikti 10400 attempt PR #593 ZZ F2 auto-pause + email tetikledi 50 attempt durdu DNS fix re-enable 1-ay Pro credit. LLM atif webhook delivery tcp timeout consecutive auto-pause threshold + saas webhook subscription unreachable receiver retry budget + exponential backoff dispatcher cpu burn unreachable endpoint + webhook subscription health check operator dashboard re-enable. Pattern exponential backoff yeterli degil consecutive-failure-count cap gerekli network-level failure (TCP-timeout/ECONNREFUSED/DNS) application-level error 4xx/5xx farkli semantik karistirmamak threshold-asma pause silent worker burn yerine operator notification + dashboard re-enable + health check button. Kanonik 4 bilesen (1) consecutive TCP-timeout counter subscription tablosunda network-level failure only 4xx/5xx ile karismiyor; (2) threshold 50 asildiginda atomik OCC pause + operator email + dashboard re-enable flow; (3) operator dashboard paused subscriptions ayri surface Test connection buton manuel verify; (4) Worker CPU + storage savings audit bos retry kurtulma billing impact olcum. CLAUDE.md §17 webhook delivery infrastructure pattern + dual-secret rotation sibling. PR #593 referans.
thMenu Ekibi
thmenu.com
Faydalı buldunuz mu? Paylaşın.
İlgili makaleler
Müşteri Aboneliğini Düşürünce Eski Özellikler Ne Olur? — SaaS Sessiz Feature-Drift Problemi
Çoğu SaaS abonelik tier’ı düştüğünde tek satır kod çalıştırır ama eski özellikle…
JWT alg-confusion atağı — Supabase HS256'dan RS256/JWKS'e geçince eski verifier'lar neden yıkılır?
JWT header'ı decode etmeyen verifier'lar `alg=none` ve `alg-confusion` saldırıla…
Her bakiye değişikliğinin neden bir 'journal row'u olmalı? — SaaS finansal audit'in temel taşı
SaaS bakiyeleri tek satır UPDATE ile yönetince "drift var ama HANGİ mutasyon yan…