Sürekli Tümleştirme ve Sürekli Teslim (Azure ile Real-World Cloud Apps Oluşturma)

Tarafından Rick Anderson, Tom Dykstra

Fix It Project'i indirin veya E-kitap indirin

Azure ile Gerçek Dünya Bulut Uygulamaları Oluşturma e-kitabı, Scott Guthrie tarafından geliştirilen bir sunuyu temel alır. Bulut için web uygulamalarını başarıyla geliştirmenize yardımcı olabilecek 13 desen ve uygulama açıklanmaktadır. E-kitap hakkında bilgi için ilk bölüme bakın.

Önerilen ilk iki geliştirme süreci deseni Her Şeyi Otomatikleştir ve Kaynak Denetimi'ydi ve üçüncü işlem deseni bunları birleştiriyordu. Sürekli tümleştirme (CI), bir geliştiricinin kaynak depoya kodu her iade etmesinde bir derlemenin otomatik olarak tetiklendiğini gösterir. Sürekli teslim (CD) bunu bir adım ileri götürür: Derleme ve otomatik birim testleri başarılı olduktan sonra, uygulamayı daha ayrıntılı test yapabileceğiniz bir ortama otomatik olarak dağıtırsınız.

Bulut, yalnızca kullandığınız sürece ortam kaynakları için ödeme yaptığınız için test ortamının bakımının maliyetini en aza indirmenize olanak tanır. CD işleminiz, ihtiyacınız olduğunda test ortamını ayarlayabilir ve sınamayı bitirdiğinizde ortamı devre dışı bırakabilirsiniz.

Sürekli Tümleştirme ve Sürekli Teslim iş akışı

Genellikle geliştirme ve hazırlama ortamlarınıza sürekli teslim yapmanızı öneririz. Microsoft'ta bile çoğu ekip, üretim dağıtımı için el ile gözden geçirme ve onay süreci gerektirir. Bir üretim dağıtımı için, geliştirme ekibindeki önemli kişiler destek için kullanılabilir olduğunda veya trafiğin düşük olduğu dönemlerde gerçekleştiğinden emin olmak isteyebilirsiniz. Ancak geliştirme ve test ortamlarınızı tamamen otomatikleştirmenizi engelleyecek hiçbir şey yoktur, böylece bir geliştiricinin tek yapması gereken bir değişikliği denetlemektir ve kabul testi için bir ortam ayarlanır.

Sürekli teslim hakkında bir Microsoft Desenleri ve Uygulamaları e-kitabındaki aşağıdaki diyagramda tipik bir iş akışı gösterilmektedir. Resmin özgün bağlamında tam boyutunu görmek için resme tıklayın.

Sürekli teslim iş akışı

Bulut, uygun maliyetli CI ve CD'yi nasıl etkinleştirir?

Bu işlemleri Azure'da otomatikleştirmek kolaydır. Her şeyi bulutta çalıştırdığınızdan, derlemeleriniz veya test ortamlarınız için sunucu satın almanız veya yönetmeniz gerekmez. Ayrıca testlerinizi yapmak için bir sunucunun kullanılabilir olmasını beklemeniz gerekmez. Yaptığınız her derlemeyle, otomasyon betiğinizi kullanarak Azure'da bir test ortamı oluşturabilir, buna karşı kabul testleri veya daha ayrıntılı testler çalıştırabilir ve işiniz bittiğinde bunu kaldırabilirsiniz. Bu sunucuyu yalnızca 2 saat, 8 saat veya bir gün boyunca çalıştırıyorsanız, yalnızca bir makinenin çalıştığı süre için ödeme yaptığınız için, bunun için ödemeniz gereken para miktarı çok azdır. Örneğin, ücretsiz düzeyden bir katman yukarı giderseniz Düzelt uygulaması için gereken ortam temel olarak saatte yaklaşık 1 sent ücrete mal olur. Bir ay boyunca ortamı bir kerede yalnızca bir saat çalıştırdıysanız test ortamınız starbucks'tan satın alacağınız bir latte'den daha düşük maliyetli olabilir.

Azure DevOps Services

Azure DevOps Services, planlamadan dağıtıma kadar uygulama geliştirme konusunda size yardımcı olacak bir dizi özellik sağlar.

  • Hem Git (dağıtılmış) hem de TFVC (merkezi) kaynak denetimini destekler.
  • Esnek bir derleme hizmeti sunar; bu da gerektiğinde dinamik olarak derleme sunucuları oluşturduğu ve işleri bittiğinde bunları indirdiği anlamına gelir. Birisi kaynak kodu değişikliklerini denetlediğinde derlemeyi otomatik olarak başlatabilirsiniz ve çoğu zaman boşta kalan kendi derleme sunucularınız için ayırmanız ve ödemeniz gerekmez. Belirli sayıda derlemeyi aşmadığınız sürece derleme hizmeti ücretsizdir. Yüksek hacimli derlemeler yapmayı bekliyorsanız ayrılmış derleme sunucuları için biraz daha fazla ödeme yapabilirsiniz.
  • Azure'a sürekli teslimi destekler.
  • Otomatik yük testlerini destekler. Yük testi bulut uygulaması için kritik öneme sahiptir ancak çok geç olana kadar genellikle ihmal edilir. Yük testi, binlerce kullanıcı tarafından bir uygulamanın yoğun kullanımı benzetimini yaparak uygulamayı üretim ortamına sunmadan önce performans sorunlarını bulmanızı ve aktarım hızını geliştirmenizi sağlar.
  • Küçük çevik ekipler için gerçek zamanlı iletişimi ve işbirliğini kolaylaştıran ekip odası işbirliğini destekler.
  • Çevik proje yönetimini destekler.

Azure DevOps Services sürekli tümleştirme ve teslim özellikleri hakkında daha fazla bilgi için Bkz. Azure DevOps belgeleri.

Anahtar teslim proje yönetimi, ekip işbirliği ve kaynak denetimi çözümü arıyorsanız Azure DevOps Services göz atın. Azure DevOps Services'a kaydolun.

Özet

İlk üç bulut geliştirme deseni, düşük döngü süresiyle tekrarlanabilir, güvenilir, öngörülebilir bir geliştirme sürecinin nasıl uygulanacağını anlatmıştır. Sonraki bölümde mimari ve kodlama desenlerini incelemeye başlayacağız.

Kaynaklar

Daha fazla bilgi için bkz. Azure App Service'da web uygulaması dağıtma.

Ayrıca aşağıdaki kaynaklara bakın: