Sobes.tech
Junior

Sürekli dağıtım nedir?

sobes.tech yapay zeka

AI'dan gelen yanıt

Sürekli Dağıtım (Continuous Deployment), her kod değişikliğinin otomatik CI/CD hattındaki tüm aşamaları (derleme, test) geçtiği durumda, insan müdahalesi olmadan otomatik olarak üretim ortamına dağıtıldığı bir yazılım teslim stratejisidir.

Sürekli Teslimat (Continuous Delivery) ile temel farklar:

  • Sürekli Teslimat: Değişiklikler üretime dağıtıma hazırdır, ancak dağıtım süreci açık bir tetikleyici gerektirir (genellikle manuel).
  • Sürekli Dağıtım: Tüm testleri geçtikten sonra değişiklikler otomatik olarak üretime dağıtılır.

Avantajlar:

  • Fonksiyonların hızlandırılmış sürümü.
  • Daha kısa geri bildirim döngüsü.
  • Sık ve küçük değişikliklerle riskin azaltılması.
  • Üretimde hataların hızlı düzeltilmesi.

Gerekli koşullar:

  • Yüksek seviyede otomatik test (birim, entegrasyon, kabul).
  • Güvenilir altyapı ve otomatik dağıtım.
  • İzleme ve bildirim sistemi.
  • Değişiklikleri hızlıca geri alma imkanı.

Sürekli dağıtım ile CI/CD hattındaki adımlar örneği:

  1. Geliştirici kodu VCS'ye (Git) commit eder.
  2. Derleme tetiklenir (Jenkins, GitLab CI, GitHub Actions).
  3. Otomatik testler yapılır (birim, entegrasyon).
  4. Bir artefakt oluşturulur (Docker imajı, paket).
  5. Artefakt staging ortamında test aşamasından geçer.
  6. Tüm testler başarılı olursa, artefakt otomatik olarak üretim ortamına dağıtılır.
  7. Dağıtımdan sonra kontroller (sağlık kontrolleri, duman testleri) yapılır.
  8. Üretim, hatalar ve performans açısından izlenir.

Bu, otomatik süreçlere yüksek güven ve olgun bir DevOps kültürü gerektirir.