Uygulama geliştirme ve dağıtım

Azure İşlevleri ile sunucusuz uygulamalar geliştirmek ve dağıtmak için desenleri ve uygulamaları inceleyin, DevOps işlem hatlarını yapılandırın ve site güvenilirlik mühendisliği (SRE) en iyi yöntemlerini uygulayın.

Sunucusuz mimariler ve Azure İşlevleri hakkında ayrıntılı bilgi için bkz:

Planlama

Uygulama geliştirme ve dağıtım planlamak için:

  1. Geliştirme ortamını hazırlayın ve iş akışını ayarlayın.
  2. Azure İşlevleri uygulama geliştirmeyi destekleyecek projeleri yapılandırma.
  3. Uygulama tetikleyicilerini, bağlamalarını ve yapılandırma gereksinimlerini belirleyin.

Olay temelli mimariyi anlama

Sunucusuz İşlevler projesindeki her işlevi farklı bir olay tetikler. Olay temelli mimariler hakkında daha fazla bilgi için bkz:

Geliştirme ortamını hazırlama

İşlevler oluşturma araçlarıyla geliştirme iş akışınızı ve ortamınızı ayarlayın. Geliştirme araçları ve İşlevler kod projesi yapısı hakkında ayrıntılı bilgi için bkz:

Geliştirme

Kullanılacak geliştirme diline karar verin. Azure İşlevleri C#, F#, PowerShell, JavaScript, TypeScript, Java ve Python'ı destekler. Projenin tüm İşlevleri aynı dilde olmalıdır. Daha fazla bilgi için bkz. Azure İşlevleri'da desteklenen diller.

Tetikleyicileri ve bağlamaları tanımlama

Tetikleyici bir İşlev çağırır ve her İşlevin tam olarak bir tetikleyicisi olmalıdır. İşleve bağlama, başka bir kaynağı bildirimli olarak İşlev'e bağlar. İşlev tetikleyicileri ve bağlamaları hakkında daha fazla bilgi için bkz:

İşlevler uygulamasını oluşturma

İşlevler tek bir sorumluluk ilkesine uyar: tek bir şey yapın. İşlev geliştirme hakkında daha fazla bilgi için bkz:

Durum bilgisi olan iş akışları için Dayanıklı İşlevler kullanma

Azure İşlevleri'daki Dayanıklı İşlevler, orchestrator işlevleri ve durum bilgisi olan varlıklar yazarak sunucusuz bir ortamda durum bilgisi olan iş akışlarını tanımlamanıza olanak tanır. Dayanıklı İşlevler durumu, denetim noktalarını ve yeniden başlatmaları yöneterek iş mantığına odaklanmanızı sağlar. Daha fazla bilgi için bkz. Dayanıklı İşlevler nedir?

Soğuk başlangıçları anlama ve adresle

Sunucusuz konak örneklerinin sayısı sıfıra indiriliyorsa, bir sonraki istek, soğuk başlangıç olarak adlandırılan İşlev uygulamasını yeniden başlatma gecikmesine neden olur. Soğuk başlatmaların performans etkisini en aza indirmek için İşlevler uygulamasının başlangıçta yüklemesi gereken bağımlılıkları azaltın ve mümkün olduğunca az büyük, zaman uyumlu çağrı ve işlem kullanın. Otomatik ölçeklendirme ve soğuk başlatmalar hakkında daha fazla bilgi için bkz . Sunucusuz İşlevler işlemleri.

Uygulama parolalarını yönetme

Güvenlik için kimlik bilgilerini uygulama kodunda depolamayın. Anahtarları ve kimlik bilgilerini depolamak ve almak için Azure Key Vault'Azure İşlevleri kullanmak için bkz. App Service ve Azure İşlevleri için Key Vault başvurularını kullanma.

Sunucusuz İşlevler uygulama güvenliği hakkında daha fazla bilgi için bkz . Sunucusuz İşlevler güvenliği.

Dağıtım

Sunucusuz İşlevler uygulamasını üretime hazırlamak için şunları yaptığınızdan emin olun:

  • Uygulama kaynağı gereksinimlerini karşılayın.
  • Uygulamanın tüm yönlerini izleyin.
  • Uygulama sorunlarını tanılama ve giderme.
  • Üretim sistemlerini etkilemeden yeni uygulama sürümlerini dağıtın.

Dağıtım teknolojisini tanımlama

Dağıtım teknolojisine karar verin ve zamanlanmış sürümleri düzenleyin. İşlevler uygulaması dağıtımının güvenilir, sıfır kapalı kalma süresi yükseltmelerine nasıl olanak sağladığı hakkında daha fazla bilgi için bkz. Azure İşlevleri'de dağıtım teknolojileri.

Çok fazla kaynak bağlantısı kullanmaktan kaçının

İşlevler uygulamasındaki işlevler, HTTPS bağlantıları, veritabanları ve Azure Depolama gibi hizmetler gibi kaynakları paylaşır. Birçok İşlev eşzamanlı olarak çalıştırıldığında, kullanılabilir bağlantıların tükenmesi mümkündür. Daha fazla bilgi için bkz. Azure İşlevleri'de bağlantıları yönetme.

Günlüğe kaydetme, uyarı ve uygulama izlemeyi yapılandırma

Azure İzleyici'deki uygulama Analizler günlük, performans ve hata verilerini toplar. Uygulama Analizler performans anomalilerini otomatik olarak algılar ve sorunları tanılamaya ve işlev kullanımını anlamaya yardımcı olacak güçlü analiz araçları içerir.

Uygulama izleme ve günlüğe kaydetme hakkında daha fazla bilgi için bkz:

Sorunları tanılama ve giderme

Proaktif ve sorun öncelikli senaryolarda sorun giderme için tanılamayı etkili bir şekilde kullanmayı öğrenin. Daha fazla bilgi için bkz.

Otomatik işlem hattı ve DevOps kullanarak uygulama dağıtma

Kod işlemeden üretim dağıtımına kadar tüm adımların tam otomasyonu, ekiplerin kod oluşturmaya odaklanmasını sağlar ve el ile gerçekleştirilen adımların ek yükünü ve olası insan hatasını ortadan kaldırır. Yeni kod dağıtmak daha hızlı ve daha az risklidir ve ekiplerin kodu konusunda daha çevik, daha üretken ve daha güvenli hale gelmesine yardımcı olur.

DevOps ve sürekli dağıtım (CD) hakkında daha fazla bilgi için bkz:

İyileştirme

Uygulama üretime geçtikten sonra ölçeklendirmeye hazırlanın ve site güvenilirlik mühendisliğini (SRE) uygulayın.

En iyi ölçeklenebilirliği sağlama

İşlevler uygulama ölçeklenebilirliğini etkileyen faktörler hakkında bilgi için bkz:

SRE uygulamalarını uygulama

Site Güvenilirlik Mühendisliği (SRE), önemli sistem ve uygulama güvenilirliğini korurken marketin taleplerine göre yineleme yapma konusunda kanıtlanmış bir yaklaşımdır. Daha fazla bilgi için bkz.

Sonraki adımlar

Uygulamalı sunucusuz İşlevler uygulaması geliştirme ve dağıtım yönergeleri için bkz:

Ekiplerin ve müşterilerin sunucusuz İşlevler projelerini başarıyla uygulamasına yardımcı olacak bir mühendislik playbook'u için bkz . Müşteri/İş Ortağı Mühendislik Playbook'u ile Kod Oluşturma.