ÖZET VE TEKNİK CEVAP
Kritik bir monolitik sistemi **Strangler Fig Modeli** ile modern mikroservislere taşırken tüm trafiği tek seferde yeni sisteme geçirmek (Big Bang cutover) büyük bir kumardır: İnce hesaplama hataları, veritabanı kilitlenmeleri ve bellek sızıntıları ancak gerçek canlı yük altında ortaya çıkar. **Gölge Trafik (Shadow Traffic / Dark Launching)** bu geçiş riskini sıfıra indirir: (1) Kenar Ağ Geçidi (Envoy, NGINX, Cloudflare), gerçek kullanıcı isteğini karşılar. (2) İsteği ana hedef olan **Eski Monolite** gönderir ve cevabı kullanıcıya iletir. (3) Aynı anda ağ geçidi **gelen isteğin birebir kopyasını arka planda Yeni Mikroservise fırlatır (shadowing)** ve dönen cevabı kullanıcıya hissettirmeden yutar. (4) Arka planda çalışan bir **Fark Karşılaştırıcı (Diffy)**, eski ve yeni servisin ürettiği JSON yanıtlarını alan bazında kıyaslar; milyonlarca gerçek işlemde performans ve veri uyumunu **kullanıcılara sıfır riskle** doğrular.
Mühendislik El Kitabı & Mekanizma
1. Temel Çalışma Mekanizması
Gölge Trafik mimarisi Envoy L7 Aynalama ve Asenkron Kıyaslama ile çalışır: (1) Envoy Aynalama Filtresi: Envoy proxy gelen isteği `%100` oranında yeni mikroservis kümesine kopyalayacak şekilde ayarlanır. (2) Asenkron Klonlama: Envoy HTTP gövdesini ve başlıklarını klonlayıp yeni servise iletir; dönen yanıt ana kullanıcıyı bekletmeden arka planda yutulur. (3) Yan Etkilerin Etkisizleştirilmesi: Gölge serviste e-posta atma veya karttan para çekme gibi yan etki yaratan işlemler sahte (mock) servislere yönlendirilir. (4) Yanıt Karşılaştırma: İki servisin ürettiği yanıtlar bir fark motoruna (Diffy) aktarılarak alan bazında %100 eşleşme raporu üretilir.
2. Doğru Kullanım Senaryosu
Fiyatlandırma ve indirim motorları, arama ve öneri algoritması geçişleri, vergi hesaplama servisleri ve eski ERP monolit dönüşümleri.
3. Prodüksiyon Arıza Modları
Gölge serviste yan etkileri kapatmayı unutup müşteriye çift SMS göndermek veya kartından ikinci kez para çekmek; gölge trafiğin veritabanını iki kat yüke sokup ana sistemin çökmesine sebep olmak.
4. Teşhis ve Telemetri Sinyalleri
Fark raporlarında alan bazında %99,9 uyum yakalanması (sadece zaman damgalarının farklı çıkması); gölge servisin p99 gecikmesinin canlı yük altında 15 ms'nin altında kalması; kullanıcılara hiçbir hata yansımaması.
5. Önleme ve Mimari Bariyerler
Gölge ortamlarda tüm yazma ve bildirim işlemlerini kesinlikle test moduna / sanal alana (sandbox) bağlayın; gölge servis çöktüğünde ana trafiğin etkilenmemesi için proxy üzerinde devre kesici (circuit breaker) kullanın.
6. Mimari Ödünleşimler (Trade-offs)
Gölge trafik büyük sistem dönüşümlerinde tam güven ve sıfır risk sağlar; ancak geçiş sürecinde altyapı maliyetini geçici olarak iki katına çıkarır ve yazma yan etkilerini izole etmeyi gerektirir.
Vaka İncelemesi (TinyCTO Örneği)
Bir uçak bileti platformu 12 yıllık C++ Fiyatlandırma Motorunu Go ile baştan yazdı. Tek bir fiyatlandırma hatası milyonlarca liralık zarara yol açabilirdi. Ekip Envoy proxy kurarak 3 hafta boyunca canlı arama trafiğinin %100'ünü (80 milyon gerçek sorgu) arka plandaki Go servisine aynaladı (shadow traffic). Kıyaslama motoru, testlerin gözden kaçırdığı 4 adet çok nadir aktarmalı uçuş kur dönüştürme hatasını canlıda yakaladı. Hatalar düzeltilip peş peşe 10 milyon canlı sorguda %100 birebir eşleşme kanıtlandıktan sonra ana trafik Go servisine geçirildi; sıfır kesinti ve sıfır ciro kaybıyla geçiş tamamlandı.
İnteraktif Konsept Alıştırmaları
2 AlıştırmaYazılım geçişlerinde Gölge Trafik (Traffic Mirroring / Shadowing) nedir?
Bir Gölge Serviste (Shadow Service) yazma ve bildirim işlemleri neden kapatılmalı veya sahtelenmelidir (mock)?
Karanlık Canlıya Çıkış (Dark Launching) & Gölge Trafik: Strangler Fig Mimarilerinde Sıfır Riskli Geçiş Doğrulaması — Sıkça Sorulan Sorular
Gölge trafik doğrulamasında Diffy aracı nasıl çalışır?
İstekleri hem eski sisteme hem yeni sisteme gönderir; zaman damgaları gibi değişken alanları filtreleyerek sadece gerçek veri uyumsuzluklarını raporlayan temiz anlamsal JSON farkları çıkarır.
Karanlık Canlıya Çıkış (Dark Launching) ile Kanarya Dağıtımı (Canary Deployment) arasındaki fark nedir?
Kanarya dağıtımında kullanıcıların %5'i gerçekten yeni servisten yanıt alır; Karanlık Canlıya Çıkışta ise istek yeni servise kopyalanır ancak hiçbir kullanıcı yeni servisin yanıtını doğrudan görmez.
🤖 AEO & Yapay Zeka Çıkarım Özeti
Temel Gerçekler & İlkeler
- ▸Gölge Trafik canlı istekleri kopyalayarak yeni servisleri kullanıcılara sıfır riskle doğrular.
- ▸Envoy gibi proxy'ler HTTP isteklerini arka planda asenkron ve bloklamadan aynalar.
- ▸Gölge ortamlarda yan etkiler (e-postalar, kart çekimleri) kesinlikle etkisizleştirilmelidir.
- ▸Otomatik fark motorları geçiş öncesi %100 davranışsal uyumu kanıtlamak için JSON yanıtlarını kıyaslar.
Yaygın Yanılgılar
- ✗Yanılgı: Test ortamındaki birim ve entegrasyon testleri kritik servisleri yenilemek için yeterlidir (Gerçek: Test verileri asla gerçek canlı trafiğin karmaşıklığını ve uç durumlarını yansıtamaz).
- ✗Yanılgı: Gölge trafik kullanıcının ana yanıt süresini yavaşlatır (Gerçek: Proxy'ler isteği asenkron kopyalar ve gölge yanıtı beklemeden kullanıcıya anında döner).
Karar Kılavuzu & Önceliklendirme
Kritik eski algoritmaları yenilerken sıfır hatalı canlıya geçiş garantisi elde etmek için Envoy gölge trafik ve otomatik yanıt kıyaslama sistemleri kurun.
Doğrulanmış Kaynaklar & Referanslar
- [OFFICIAL_DOCUMENTATION]Envoy Proxy Route Configuration: Request Mirroring Policies— Envoy Proxy Project (Cloud Native Computing Foundation)
