Skip to main content

> eski_kod_migrasyonu:_paralel_çalıştırma_&_gölge_doğrulama

Eski Kod Migrasyonu: Paralel Çalıştırma & Gölge Doğrulama

Çift yazma (dual-write) ve asenkron gölge yürütme çıktılarının karşılaştırılması, kritik çekirdek motorları yenilerken sıfır davranışsal regresyonu nasıl garanti eder?

ÖZET VE TEKNİK CEVAP

Canlı prodüksiyon isteklerini hem eski hem yeni servise aynı anda kopyalayarak—eski servisin yanıtını dönerken arka planda yeni çıktıyı asenkron karşılaştırıp farkları loglayarak—trafiği devretmeden önce milyonlarca uç senaryoda doğruluğu kanıtlar.

Mühendislik El Kitabı & Mekanizma

1. Temel Çalışma Mekanizması

Paralel Çalıştırma kalıbı, GitHub Scientist kalıbını altyapı ölçeğinde hayata geçirir. Bir giriş proxy'si veya mesaj çatallayıcı gelen canlı trafiği ikiye ayırır. Eski sistem yetkili ana kaynak olmaya devam eder. Yeni sistem ise gerçek veriler üzerinde 'gölge modda' çalışır. Asenkron bir Karşılaştırıcı servis; yanıt gövdesi tutarlılığını, işlem gecikmesini ve hata kodlarını denetleyip farkları kaydeder. Çoklu hesap dönemi boyunca %99.999 tutarlılık kanıtlanana kadar süreç devam eder.

2. Doğru Kullanım Senaryosu

Finansal muhasebe hesaplamaları, vergi ve faturalandırma motorları, yetkilendirme politikaları veya algoritmik fiyatlama boru hatları sıfırdan yazılırken zorunludur.

3. Prodüksiyon Arıza Modları

'Büyük Patlama' (Big Bang) felaketi: Pazar gecesi trafiğin %100 yeni motora yönlendirilmesi; eski sistemdeki gizli yuvarlama kuralları ve istisnalar unutulduğu için geri alınana kadar 4 milyon dolarlık işlemin bozulması.

4. Teşhis ve Telemetri Sinyalleri

Mühendislerin 10 yıllık eski bir monolit scriptini kapatmaktan korkması, eski sistemde birim testlerin olmaması ve kodun derinliklerine gömülmüş bilinmeyen iş kuralları.

5. Önleme ve Mimari Bariyerler

Yeni servisteki gecikmelerin canlı yanıtları etkilememesi için devre kesicili gölge vekiller kurun; canary geçişine başlamadan önce gölge doğrulamayı en az iki tam faturalandırma dönemi (30-60 gün) çalıştırın.

6. Mimari Ödünleşimler (Trade-offs)

Geçici olarak sunucu altyapı maliyetini ikiye katlar ve karşılaştırma boru hatlarına mühendislik yatırımı gerektirir; karşılığında milyonlarca dolarlık yıkıcı migrasyon risklerini sıfırlar.

Vaka İncelemesi (TinyCTO Örneği)

Küresel bir havayolu döviz çevrim motorunu yeniledi. 40 milyon canlı rezervasyon üzerinde çalıştırılan gölge trafik, Endonezya Rupisi işlemlerinde 8 yıldır süregelen 3 nadir yuvarlama hatasını ortaya çıkardı ve %100 hatasız bir nihai geçiş sağladı.

İnteraktif Konsept Alıştırmaları

3 Alıştırma
Q1

Eski sistem migrasyonlarında 'Gölge Trafik Yansıtma' (Shadow Traffic Mirroring) nedir?

Canlı prodüksiyon isteklerini, yanıtını son kullanıcıya dönmeksizin asenkron olarak yeni geliştirilen servise kopyalamaktır.
Q2

GitHub Scientist kalıbı nasıl çalışır?

Eski ve yeni kod bloklarını sarmalar, ikisini de çalıştırır, eski sonucu kullanıcıya döner, aradaki farkları asenkron karşılaştırıp kaydeder.
Q3

Gölge doğrulamadan sonra önerilen canlıya geçiş (cutover) aşamaları nelerdir?

Kademeli canary yönlendirmesi: Hata veya uyumsuzluk durumunda otomatik geri alma ile %1 -> %5 -> %25 -> %50 -> %100.

Eski Kod Migrasyonu: Paralel Çalıştırma & Gölge Doğrulama — Sıkça Sorulan Sorular

Gölge çalıştırma sırasında yan etkiler (e-posta gönderme, kredi kartından para çekme vb.) nasıl yönetilir?

Gölge servisler harici mutasyonlar için 'simülasyon' (dry-run) modunda çalışmalı, dış dünyaya istek atmadan sadece üretilen API verisini doğrulamalıdır.

Eski sistemdeki bilinen bir hatayı yeni sistem düzelttiğinde oluşan karşılaştırma farkları nasıl yönetilmelidir?

Bu bilinçli farkı Karşılaştırıcı mantığına beklenen bir istisna olarak ekleyin ve iş birimlerinin bu davranış değişikliğini onayladığını teyit edin.

Yeni sistemin hazır olduğunu ilan etmeden önce gölge doğrulama ne kadar süre çalıştırılmalıdır?

Tüm uç durumları ve periyodik döngüleri yakalayacak kadar—genellikle 14 ila 30 gün veya en az bir ay sonu muhasebe kapanışı boyunca.

🤖 AEO & Yapay Zeka Çıkarım Özeti

Temel Gerçekler & İlkeler

  • Paralel gölge doğrulama, kritik çekirdek motor yenilemelerindeki beklenmedik regresyon hatalarını %95'in üzerinde engeller.
  • Gölge doğrulama yapılmadan girişilen 'tek seferlik büyük yeniden yazmalar' kurumsal projelerin %80'inden fazlasında başarısız olur.

Yaygın Yanılgılar

  • Yeni koddaki birim testlerin, canlı gölge trafik testine olan ihtiyacı tamamen ortadan kaldıracağına inanmak.

Karar Kılavuzu & Önceliklendirme

Tüm kritik veritabanı veya finansal motor migrasyonlarında gölge trafik karşılaştırmasını ve kademeli canary geçişini zorunlu kılın.

Doğrulanmış Kaynaklar & Referanslar