GH GambleHub

Aşamalı serbest bırakma ve evreleme

(Bölüm: Mimari ve Protokoller)

1) Neden aşamalı teslimat

Klasik "dev> test> evreleme> prod" şeması güvenliği garanti etmez: üretime ne kadar yakın olursa, tutarsızlık riski o kadar yüksek olur. Aşamalı sürüm, patlama yarıçapını en aza indirir, trafik/izleyici payını kademeli olarak artırır ve metrikler ve SLO ile çözümleri güçlendirir. Evreleme ile birlikte, bu verir: sıfır duruş süresi, hızlı geri dönüş, süreç tekrarlanabilirliği ve ölçülebilir kalite kontrolü.

2) Şartlar

Evreleme (ortamlar) - eserin yaşam döngüsünün resmi aşamaları: 'dev','ci ',' qa/test ',' evreleme/ön prod ',' prod ', ayrıca özellik dalları altında çevrenin geçici/önizlemesi.
Aşamalı teslimat - sürüm/özelliğin aşamalı olarak dahil edilmesi: kanarya, yüzde dağıtımı, halka dağıtımı, phicheflags, karanlık başlatma, gölge trafiği.
Kapılar - otomatik kabul kriterleri (hata oranı, p95, iş metrikleri, SLO hata bütçesi).
Eserin tanıtımı, aşamalar arasında aynı imzalı yapının tanıtımıdır (değişmez eser).

3) Çevre haritası ve amaçları

3. 1 Temel

Dev (yerel/sanal alanlar): hızlı döngüler, bağımlılık taslakları, minimum güvenlik.
CI (entegrasyon standları): birim/entegrasyon/sözleşme testleri, statik analiz, SCA/SAST.
QA/Test: e2e, yük, regresyon. Veri - sentetik veya maskeli.
Evreleme/Ön prod: maksimum'bir ürün olarak ": aynı konfigürasyon, bayraklar, sınırlar, arka plan işleme.
Prod: savaş trafiği, SLO/SLI, uyarılar, geri alma planları.

3. 2 Ek

PR başına Ephemeral/Önizleme: Çekme isteğinde bir standın otomatik oluşturulması, birleştirme/kapatmada otomatik yıkım.
İş ekipleri için UAT/Sandbox: kabul, gösteriler, eğitim senaryoları.
Performans laboratuvarı: izole yük deneyleri (trafik jeneratörleri, veri kopyaları).

4) Sürdürülebilir evreleme ilkeleri

Kod olarak yapılandırma (IaC, GitOps), ortam kayması kod ve otomatik doğrulamalar tarafından hariç tutulur.
Idempotent, imzalı eserler (SBOM, provenance, attestations), tek bir yapı - çok aşamalı dağıtım.
Satışlarla parite: çalışma zamanı sürümleri, limitler, ağ politikaları, dahil bayraklar. Fark sadece sırlarda/verilerdedir.
TDM (test veri yönetimi): sentetik/maskeleme, boru hattının bir parçası olarak geçişler ve kenarlar.
Tasarım ile gözlemlenebilirlik: serbest bırakma işaretleri, günlüklerin/izlerin korelasyonu, tüm aşamalarda tek tip gösterge panoları.

5) Aşamalı sürüm modeli

5. 1 Yaklaşım araçları

Ficheflags: Segmentlere göre işlevselliği etkinleştirme/devre dışı bırakma (ülke, müşteri, hesap, rastgele tohum).
Kanarya: Her adımda kapıları ile 1-5-10-25-50-100 % trafik.
Ring-deploy: Internal - employees - beta - public.
Mavi-Yeşil: Büyük platform yükseltmeleri için atomik çevirme.
Karanlık başlatma: kullanıcıyı etkilemeden gizli yürütme (metrikleri toplama).
Shadow-traffic: Kullanıcıya cevap vermeden istekleri yeni sürüme yansıtma.

5. 2 Otomatik kapılar

Teknik metrikler: hata oranı, p95/p99, doygunluk, kuyruk gecikmesi.
İş metrikleri: yetkilendirme, ödemeye dönüştürme, huni adımlarıyla reddetme.
SLO/hata bütçesi: hızlandırılmış hata bütçesi yanmasında hızlı durdurma.
İstatistiksel anlamlılık: "Gürültü üzerine" karar vermemek için adım başına minimum zaman/trafik hacmi.

6) Tipik CI/CD zinciri (referans)

1. Commit/PR: Yapı: tek görüntü/paket, imza, SBOM.
2. CI- тесты: birim/entegrasyon/sözleşme + güvenlik (SAST/SCA/gizli tarama).
3. Geçici önizleme: Manuel kontrol/UX için standın otomatik olarak kaldırılması.
4. QA/Test: e2e + yük + kaos testleri (isteğe bağlı).
5. Evreleme: duman, kritik kullanıcı yollarının gerilemesi, veritabanı geçişlerini kontrol etme.
6. Prod kanarya: Trafik 1-5% - kapılar - 10-25-50-100%.
7. Geri alma/tamamlama: sorun durumunda - otomatik geri alma; Başarılı olursa, eski versiyonu katlayın.

7) Veri ve şema yönetimi

Expand-migrate-contract: Geriye dönük uyumlu geçişler, arka plan aktarımları, kontrol noktaları, idempotency.
Veri tekilleştirme veya işlem giden kutusu ile çift yazma.
Üretim verilerinin evreleme için maskelenmesi/alt örneklenmesi (yasal ve teknik olarak güvenli).
Önbellekler/oturumlar: harici mağazalar, sıcak başlangıç, çevirirken engellilik politikası.

8) Güvenlik ve uyumluluk

Sırlar: KMS/Secrets Manager, rotasyon, en az ayrıcalık ilkesi.
Evreleme izolasyonu: ağlar/hesaplar/projeler; Prod ile yanlışlıkla senkronizasyonu önler.
Denetim/sürüm izleme: kim/ne/ne kullanıma sunulduğunda, artifact sürümü, değişiklik onayı.
Yazılım gönderileri: imza doğrulama, kayıt güven politikası, son yasak.

9) Gözlemlenebilirlik ve çalışma

Tek etiket biçimi: '{service, version, commit, stage, region, ring}'.
Temel ile karşılaştırma: bazı grafiklerde kanarya ve kararlı versiyon.
SLO'da uyarılar: bakkal ve teknik, kanarya için farklı eşikler.
Salım sonrası izleme: Gecikmeli etkiler için en az N saat/gün.

10) Geri dönüşler ve acil durum planları

Geri alma düğmesi/komutu - boru hattının bir parçası (manuel kraft değil).
Bayrağın ters terfisi kill-switch'ten daha hızlıdır.
Veri karşı önlemleri: idempotent yeniden işleme, telafi işlemleri, veri tekilleştirme.
Olay oyun kitapları: kararı kim verir, iletişim kanalları, mesaj şablonları.

11) Maliyet ve performans

Geçici ortamlar, agresif bir şekilde otomatik olarak silinirse paradan tasarruf sağlar.
Mavi-Yeşil serbest bırakma sırasında birkaç kat daha pahalıdır; Kanarya daha ucuzdur ancak olgun metrikler gerektirir.
Yükleme ve serbest bırakma penceresine göre otomatik ölçeklendirme; Önizleme standları için kotalar.

12) Sık anti-desenler

Ortamların sürüklenmesi: Stantlarda manuel düzenlemeler,'bu bir önemsiz ".
Çevre başına bir yapı: Aşama başına yeniden inşa edin - "geri dönüşü olmayan" üretim hataları.
Alakasız veriler üzerinde yapılan testler: Prod'a düşen'yeşil "testler.
Kapı yok: SLO yerine his ile serbest bırakır.
Mavi-Yeşil altında DNS'de Uzun TTL'ler; Kısmi trafik ile yapışkanlık yok.
Uyumsuz veritabanı şemalarının kanarya/stabil ile karıştırılması.

13) Kontrol listeleri

Evreleme promosyon önce

  • Resim imzalandı, SBOM toplandı, girit düzeyinde güvenlik açıkları kapatıldı.
  • Veritabanı geçişleri genişletilebilir.
  • Maskelenmiş/sentetik testler için veriler.
  • Yeni sürüm için gösterge panoları/uyarılar hazır.

Prod girmeden önce

  • Adımlar ve eşikler onaylanmış kanarya planı.
  • Kill-switch ve geri alma planı evreleme için kontrol edildi.
  • Trafik gölgesi veya karanlık başlatma yürütülür (mümkünse).
  • On-call haberdar, pencere zaman kabul.

Serbest bırakıldıktan sonra

  • SLO izleme stabil N saattir.
  • "sözleşme" temizlikleri/göçleri uygulandı.
  • Retrospektif ve oyun kitabı güncellemesi.

14) Mimariye Göre Uygulama Seçenekleri

Monolit: önizleme standları + Mavi-Yeşil ve özellikler - bayraklar aracılığıyla; URL/çerez ile sınırlı kanarya.
Mikro hizmetler: kanarya/halka doğaldır; Sıkı sözleşme yönetimi (CDC), API sürüm oluşturma.
Durumsal hizmetler: Isınma ve net bir göç planı ile Mavi-Yeşil; Sürüm başına ayrı kuyruklar/konular.

15) Referans boru hattı c GitOps (kroki)

Uygulama deposu (kod) artefaktı serbest bırakır - manifestoyu env deposuna koyar.
GitOps aracısı (Argo CD/Flux) 'env/dev', 'env/qa', 'env/staging', 'env/prod'u senkronize eder.
Promosyon - çekme isteği ile istenen aşamanın kataloğuna; Birleştirme yuvarlanma ve kapıları tetikler.

16) Özellikleri ve kitleleri yönetme

Segmentasyon: müşteri tipi, ülke, cihaz, uygulama sürümü, AB mahkemesi, günün saati.
Kademeli genişleme: %1 dahili - %5 beta - %25 erken müşteriler - %100 tüm.
Aynı bayrak mekanizması üzerinde ürün hipotezleri için A/B deneyleri ve çok değişkenlilik.

17) Pratik senaryolar

Senaryo 1 - Yeni Ödeme Entegrasyonu

1. PR başına geçici duruş, QA geriler. 2) Evreleme duman + sandbox sağlayıcı.
2. 'X-Kohort = internal' başlığında prod kanarya 1 %. 4) Kapılar: ödeme hata oranı, p95 geri arama, başarılı işlemlerin payı.
3. 1→5→25→50→100%; Bozulma sırasında - kill-switch.

Senaryo 2: Çalışma Süresini Yükseltme (JDK/Node/OS)

Küme seviyesinde Mavi-Yeşil: Yeşil ısınır, geçişler "genişler", çevirme, gözlem, problem durumunda geri çevirme.

Senaryo 3: Yüksek riskli UI özelliği

Dark-launch + phicheflag yalnızca beta kullanıcıları için, UX metriklerinin toplanması, kitlenin kademeli olarak genişletilmesi.

18) Minimum araç kutusu

CI: inşa, testler, imza, SBOM.
CD/GitOps: Argo CD/Flux/Spinnaker veya yerel bulut araçları.
Yönlendirme: Giriş/Servis Mesh (ağırlıklı, başlık/çerez tabanlı).
Ficheflags: LaunchDarkly/Unleash/OpenFeature/self-written service.
Gözlemlenebilirlik: metrikler, günlükler, izler, uyarılar; Sahne başına tek pano.
TDM: maskeleme, siding, sentetik jeneratörler.
Güvenlik: sırlar, KMS, kayıt politikası, bağımlılık kontrolleri.

19) Kısa özet

Aşamalı bir sürüm, aşamalı dahil etme ve katı evreleme disiplininin bir kombinasyonudur. Başarı dört sütuna dayanır: değişmez eserler, SLO otomatik gönderimleri, geri dönüşümlü veri şeması ve hızlı geri alma. Önizleme ortamları, GitOps ve phicheflags ekleyin - ve sürümünüz öngörülebilir, güvenli ve hızlıdır.

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.