Azure İşlevleri keşfedin
Azure İşlevleri daha az kod yazmanızı, daha az altyapının bakımın yapmanızı ve maliyet tasarrufu yapmanızı sağlayan sunucusuz teknoloji çözümüdür. Bulut altyapısı, sunucuları dağıtma ve sürdürme konusunda endişelenmek yerine uygulamalarınızı çalışır durumda tutmak için gereken tüm güncel kaynakları sağlar.
Genellikle bir dizi kritik olaya tepki vermek için sistemler oluştururuz. Web API'sini oluştururken, veritabanı değişikliklerine yanıt verirken, IoT veri akışlarını işlerken ve hatta ileti kuyruklarını yönetirken, her uygulamanın bu olaylar gerçekleşirken kod çalıştırmanın bir yoluna ihtiyacı vardır.
Azure İşlevleri, kodunuzun yürütülmesini başlatmanın yolları olan tetikleyicileri ve giriş ve çıkış verileri için kodlamayı basitleştirmenin yolları olan bağlamaları destekler. Azure'da başka tümleştirme ve otomasyon hizmetleri vardır ve hepsi tümleştirme sorunlarını çözebilir ve iş süreçlerini otomatikleştirebilir. Tümü giriş, eylemler, koşullar ve çıkış tanımı yapabilir.
Azure İşlevleri ve Azure Logic Apps karşılaştırması
hem İşlevler hem de Logic Apps, sunucusuz iş yüklerini etkinleştiren Azure Hizmetleridir. Azure İşlevleri sunucusuz bir işlem hizmetiyken Azure Logic Apps sunucusuz bir iş akışı tümleştirme platformudur. Her ikisi de karmaşık düzenleme oluşturabilir. Düzenleme, Logic Apps’te karmaşık bir görevin gerçekleştirilmesi için yürütülen, eylemler olarak adlandırılan işlevlerin veya adımların bir koleksiyonudur.
Azure İşlevleri için kod yazarak ve Dayanıklı İşlevler uzantısını kullanarak düzenleme geliştirebilirsiniz. Logic Apps için düzenlemeleri, GUI kullanarak veya yapılandırma dosyalarını düzenleyerek oluşturursunuz.
Aşağıdaki tabloda İşlevler ile Logic Apps arasındaki temel farklardan bazıları listelenmiştir:
| Konu | Azure İşlevleri | Mantık Uygulamaları |
|---|---|---|
| Gelişme | Koda öncelik veren (kesinlik temelli) | Tasarımcıya öncelik veren (bildirim temelli) |
| Bağlantı | Yaklaşık bir düzine yerleşik bağlama türü, özel bağlamalar için kod yazma | Bağlayıcılardan oluşan büyük koleksiyon, B2B senaryoları için Enterprise Integration Pack, özel bağlayıcı oluşturma |
| Eylemler | Her etkinlik bir Azure işlevidir; eylem işlevleri için kod yazma | Hazır eylemlerden oluşan büyük koleksiyon |
| Izleme | Azure Application Insights | Azure portalı, Azure İzleyici günlükleri |
| Yönetim | REST API, Visual Studio | Azure portalı, REST API, PowerShell, Visual Studio |
| Yürütme bağlamı | Azure'da veya yerel olarak çalışır | Azure'da, yerel olarak veya şirket içinde çalışır |
İşlevler ve Web İşleri karşılaştırması
Azure İşlevleri gibi, WebJobs SDK ile Azure App Service WebJobs da geliştiriciler için tasarlanmış, koda öncelik veren bir tümleştirme hizmetidir. Her ikisi de Azure App Service üzerinde derlenmiş olup source control integration, authentication ve monitoring with Application Insights integration gibi özellikleri destekler.
Azure İşlevleri, WebJobs SDK’da derlendiğinden diğer Azure hizmetlerine yönelik aynı bağlantıların ve olay tetikleyicilerinin birçoğunu paylaşır. Web İşleri SDK'sı ile Azure İşlevleri ile Web İşleri arasında seçim yaparken göz önünde bulundurmanız gereken bazı faktörler şunlardır:
| Faktör | İşlevler | WebJobs SDK ile WebJobs |
|---|---|---|
| Otomatik ölçeklendirme ile sunucusuz uygulama modeli | Evet | Hayır |
| Tarayıcıda geliştirme ve test | Evet | Hayır |
| Kullanım başına ödeme fiyatlandırması | Evet | Hayır |
| Logic Apps ile tümleştirme | Evet | Hayır |
| Olayları tetikleme | Zamanlayıcı Azure Depolama kuyrukları ve blobları Azure Service Bus kuyrukları ve konuları Azure Cosmos DB veritabanı Azure Event Hubs HTTP/Web Kancası (GitHub) Slack) Azure Event Grid |
Zamanlayıcı Azure Depolama kuyrukları ve blobları Azure Service Bus kuyrukları ve konuları Azure Cosmos DB veritabanı Azure Event Hubs Dosya sistemi |
Azure İşlevleri, Azure Uygulaması Service WebJobs'un sunduğundan daha fazla geliştirici üretkenliği sunar. Ayrıca programlama dilleri, geliştirme ortamları, Azure hizmet tümleştirmesi ve fiyatlandırma için daha fazla seçenek sunar. Çoğu senaryo için bu en iyi seçenektir.