Azure’da doğru tümleştirme ve otomasyon hizmetlerini seçme
Bu makalede aşağıdaki Microsoft bulut hizmetleri karşılaştırılır:
- Microsoft Power Automate (Microsoft Flow idi)
- Azure Logic Apps
- Azure İşlevleri
- Azure App Service Web İşleri
Tüm bu hizmetler, tümleştirme sorunlarını çözebilir ve iş süreçlerini otomatikleştirebilir. Tümü giriş, eylemler, koşullar ve çıkış tanımı yapabilir. Her birini belirli bir zamanlamayla veya tetikleyiciyle çalıştırabilirsiniz. Her hizmetin benzersiz avantajları vardır ve bu makalede farklar açıklanmaktadır.
Azure Işlevleri ve diğer Azure işlem seçenekleri arasında daha genel bir karşılaştırma arıyorsanız, Azure işlem hizmeti seçme ve mikro hizmetler için bir Azure Işlem seçeneği seçmeölçütlerine bakın.
Microsoft Power Automate ve Azure Logic Apps karşılaştırın
Power Automate ve Logic Apps, iş akışları oluşturabileceğiniz tasarımcı-ilk tümleştirme hizmetlerdir. Her iki hizmet de çeşitli SaaS uygulamaları ve kurumsal uygulamalarla tümleştirilir.
Power Automate, Logic Apps üzerine kurulmuştur. Aynı iş akışı tasarımcısını ve aynı bağlayıcılarıpaylaşır.
Power Automate, herhangi bir office çalışanını geliştiricilere veya bt üzerinden geçmeden basit tümleştirmeler (örneğin, bir SharePoint belge kitaplığı üzerinde bir onay işlemi) gerçekleştirmesini sağlar. Logic Apps, kurumsal düzeyde Azure DevOps ve güvenlik uygulamalarının gerekli olduğu gelişmiş tümleştirmelere (örneğin, B2B işlemleri) da olanak sağlayabilir. Kurumsal iş akışının zamanla karmaşık hale gelmesi tipik bir durumdur. Buna uygun olarak, ilk olarak bir akışta başlayabilir ve ardından gerektiğinde bir Logic App 'e dönüştürebilirsiniz.
aşağıdaki tablo, Power Automate veya Logic Apps belirli bir tümleştirme için en iyi olup olmadığını belirlemenize yardımcı olur:
| Power Automate | Logic Apps | |
|---|---|---|
| Kullanıcılar | Ofis çalışanları, iş kullanıcıları veya SharePoint yöneticileri | Uzman tümleştiriciler ve geliştiriciler, BT uzmanları |
| Senaryolar | Self servis | Gelişmiş tümleştirmeler |
| Tasarım Aracı | Tarayıcı içi ve mobil uygulama, yalnızca kullanıcı arabirimi | Tarayıcı içi ve Visual Studio, Cod görünümü sağlanır |
| Uygulama yaşam döngüsü yönetimi (ALM) | Üretim dışı ortamlarda tasarım ve test etme, hazırlık sırasında üretime yükseltme | Azure DevOps: kaynak denetimi, test, destek, otomasyon ve yönetilebilirlik Azure Resource Manager |
| Yönetici deneyimi | Power Automate ortamları ve veri kaybı önleme (DLP) ilkelerini yönetme, lisanslamayı izleme: yönetim merkezi | Kaynak gruplarını, bağlantıları, erişim yönetimini ve günlüğe kaydetmeyi yönetme: Azure Portal |
| Güvenlik | güvenlik denetim günlüklerini, DLP 'yi, hassas veriler için bekleyen şifrelemeyi Microsoft 365 | Azure güvenlik güvencesi: Azure güvenliği, bulut için Microsoft Defender, Denetim günlükleri |
Azure İşlevleri ve Azure Logic Apps karşılaştırması
İşlevler ve Logic Apps, sunucusuz iş yüklerine olanak tanıyan Azure hizmetleridir. Azure işlevleri sunucusuz bir işlem hizmetidir, ancak Azure Logic Apps sunucusuz iş akışları sağlar. Her ikisi de karmaşık düzenlemeler 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. Örneğin, bir dizi siparişi işlemek için, bir işlevin birçok örneğini paralel olarak yürütebilir, tüm örneklerin bitmesini bekleyebilir ve sonra toplama üzerinde bir sonuç hesaplayan bir işlev yürütebilirsiniz.
Azure İşlevleri için düzenlemeleri kod yazarak ve Dayanıklı İşlevler uzantısını kullanarak geliştirirsiniz. Logic Apps için düzenlemeleri, GUI kullanarak veya yapılandırma dosyalarını düzenleyerek oluşturursunuz.
Düzenleme oluşturduğunuzda, mantıksal uygulamalardan işlev çağırdığınızda ve işlevlerden mantıksal uygulama çağırdığınızda hizmetleri karıştırıp eşleştirebilirsiniz. Hizmet özelliklerine veya kişisel tercihinize göre her düzenlemenin nasıl oluşturulacağını seçin. Aşağıdaki tabloda bunlar arasındaki bazı önemli farklılıklar listelenmiştir:
| Dayanıklı İşlevler | Logic Apps | |
|---|---|---|
| Geliştirme | Koda öncelik veren (kesinlik temelli) | Tasarımcıya öncelik veren (bildirim temelli) |
| Bağlantı | Bir düzine yerleşik bağlama türü hakkında, özel bağlamalar için kod yazın | büyük bağlayıcılar koleksiyonu, B2B senaryoları için Enterprise Integration Pack, özel bağlayıcılar 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 |
| İzleme | Azure Application Insights | Azure Portal, Azure izleyici günlükleri |
| Yönetim | REST API, Visual Studio | Azure portal, REST API, PowerShell, Visual Studio |
| Yürütme bağlamı | Yerel olarak veya bulutta çalışabilir | Yalnızca bulutta çalışır |
İşlevler 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.
Web İşleri ve Web İşleri SDK’sı
Bir komut dosyası veya kodu bir App Service Web uygulaması bağlamında çalıştırmak için App Service WebJobs özelliğini kullanabilirsiniz. WebJobs SDK, Azure hizmetlerine yanıt olarak yazdığınız kodu kolaylaştıran WebJobs için tasarlanmış bir çerçevedir. örneğin, bir küçük resim oluşturarak Azure Depolama bir görüntü blobu oluşturmaya yanıt verebilirsiniz. WebJobs SDK, WebJob’a dağıtabileceğiniz bir .NET konsol uygulaması olarak çalıştırılır.
WebJobs ve WebJobs SDK birlikte en iyi şekilde çalışır; ancak WebJobs’ı WebJobs SDK olmadan kullanabilirsiniz; bunun tersi de olabilir. Bir Web İşi, App Service korumalı alanında çalışan herhangi bir programı veya betiği çalıştırabilir. Web İşleri SDK konsolu uygulaması, şirket içi sunucular gibi konsol uygulamalarının çalıştığı her yerde çalışabilir.
Karşılaştırma tablosu
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 Işleri SDK 'Sı ile Azure Işlevleri ve Web Işleri arasında seçim yaparken göz önünde bulundurmanız gereken bazı etmenler aşağıda verilmiştir:
| İşlevler | WebJobs SDK ile WebJobs | |
|---|---|---|
| Otomatik ölçeklendirmeyle sunucusuz uygulama modeli | ✔ | |
| Tarayıcıda geliştirin ve test edin | ✔ | |
| Kullanım başına ödeme fiyatlandırması | ✔ | |
| Logic Apps ile tümleştirme | ✔ | |
| Tetikleyici olayları | Zamanlayıcı Azure Depolama kuyrukları ve blobları Azure Service Bus kuyrukları ve konuları Azure Cosmos DB Azure Event Hubs HTTP/WebHook (GitHub, Slack) Azure Event Grid |
Zamanlayıcı Azure Depolama kuyrukları ve blobları Azure Service Bus kuyrukları ve konuları Azure Cosmos DB Azure Event Hubs Dosya sistemi |
| Desteklenen diller | C# F# JavaScript Java Python PowerShell |
C#1 |
| Paket yöneticileri | NPM ve NuGet | NuGet2 |
1 WebJobs (WebJobs SDK olmadan) C#, Java, JavaScript, Bash, .cmd, .bat, PowerShell, PHP, TypeScript, Python ve daha fazlasını destekler. Bu kapsamlı bir liste değildir. WebJob, App Service korumalı alanında çalıştırılabilen herhangi bir programı veya betiği çalıştırabilir.
2 WebJobs (WebJobs SDK olmadan) NPM'yi ve NuGet.
Özet
Azure İşlevleri WebJobs'ın sunduğundan Azure App Service 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.
WebJobs’ın en iyi seçenek olduğu iki senaryo aşağıda verilmiştir:
- Olayları dinleyen kod (
JobHostnesnesi) üzerinde daha fazla denetime ihtiyacınız vardır. İşlevler, host.json dosyasındaJobHostdavranışını özelleştirmek için sınırlı sayıda yöntem sunar. Bazen bir JSON dosyasındaki dize tarafından belirtilemeyen şeyler yapmanız gerekir. Örneğin, yalnızca WebJobs SDK, Azure Depolama için özel bir yeniden deneme ilkesi yapılandırmanıza olanak sağlar. - Kod App Service çalıştırmak istediğiniz bir uygulamanız var ve bunları aynı ortamda birlikte Azure DevOps.
Azure veya üçüncü taraf hizmetleri tümleştirmek için kod parçacıklarını çalıştırmak istediğiniz diğer durumlarda, WebJobs SDK ile WebJobs üzerinden Azure İşlevleri’ni seçin.
Power Automate, Logic Apps, İşlevler ve WebJobs birlikte
Bu hizmetlerden yalnızca birini seçmenize gerek yok. Dış hizmetlerle olduğu gibi, diğerleriyle de tümleştirilmiştir.
Akış bir mantıksal uygulamayı çağırabilir. Mantıksal uygulama bir işlevi çağırabilir ve işlev de bir mantıksal uygulamayı çağırabilir. Örneğin, bkz. Azure Logic Apps ile tümleşen bir işlev oluşturma.
Power Automate, Logic Apps ve İşlevler arasındaki tümleştirme zaman içinde gelişmeye devam eder. Bir hizmette bir şey oluşturabilir ve bunu diğer hizmetlerde kullanabilirsiniz.
Aşağıdaki bağlantıları kullanarak tümleştirme hizmetleri hakkında daha fazla bilgi edinebilirsiniz:
- Tümleştirme senaryoları için Azure İşlevleri ve Azure App Service'ten yararlanma - Christopher Anderson
- Tümleştirmeler Basitleşti - Charles Lamanna
- Logic Apps Canlı web yayını
- Power Automate sorulan sorular
Sonraki adımlar
İlk akışınızı, mantıksal uygulamanızı veya işlev uygulamanızı oluşturarak başlayın. Aşağıdaki bağlantılardan birini seçin: