Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Ez a cikk összehasonlítja az alábbi Microsoft-felhőszolgáltatásokat:
- Microsoft Power Automate (korábban Microsoft Flow)
- Azure Logic Apps
- Azure Functions
- Azure App Service WebJobs
Mindegyik szolgáltatás megoldhatja az integrációs problémákat és automatizálhatja az üzleti folyamatokat. Mindegyik képes bemenet, műveletek, feltételek és kimenet meghatározására. Ütemezés vagy eseményindítás alapján futtathatja mindegyiket. Minden szolgáltatásnak egyedi előnyei vannak, és ez a cikk ismerteti a különbségeket.
Feljegyzés
Ha általánosabb összehasonlítást keres az Azure Functions és más Azure számítási lehetőségek között, tekintse meg az alábbi cikkeket:
- Az Azure számítási szolgáltatásának kiválasztási kritériumai
- Azure számítási lehetőség kiválasztása mikroszolgáltatásokhoz
Az azure-beli automatizálási szolgáltatási lehetőségek összegzését és összehasonlítását az Automation-szolgáltatások kiválasztása az Azure-ban című témakörben talál.
Az Azure Logic Apps és a Microsoft Power Automate összehasonlítása
Ezek a szolgáltatások egyaránt tervezői integrációs platformok, ahol automatizált munkafolyamatokat hozhat létre és futtathat. Mindkét platform integrálható a különböző szolgáltatott szoftverekkel (SaaS) és nagyvállalati alkalmazásokkal. Mindkettő hasonló munkafolyamat-tervezőket biztosít, és bár összekötőik átfedésben vannak egymással, mindegyik platform saját egyedi összekötőket is kínál.
A Power Automate lehetővé teszi az üzleti felhasználók, az irodai dolgozók és a civil fejlesztők számára, hogy egyszerű integrációkat építsenek ki anélkül, hogy az informatikai részleggel vagy a fejlesztőkkel kellene dolgozniuk, vagy kódokat kellene írniuk. Ilyen lehet például a SharePoint-dokumentumtárak jóváhagyási munkafolyamata. Az Azure Logic Apps támogatja az integrációt a kis-és a kód nélküli forgatókönyvektől a fejlettebb, kódalapú és összetettebb munkafolyamatokig. Ilyenek például azok a B2B-folyamatok vagy forgatókönyvek, amelyek nagyvállalati szintű interakciót igényelnek az Azure DevOpsszal. Az üzleti munkafolyamatok is az egyszerűből a bonyolult felé fejlődhetnek idővel.
Annak megállapításához, hogy az Azure Logic Appst vagy a Power Automate-et szeretné-e használni egy adott integrációhoz, tekintse meg a Képesség összehasonlító táblázatot.
Az Azure Functions és az Azure Logic Apps összehasonlítása
Ezek az Azure-szolgáltatások lehetővé teszik kiszolgáló nélküli számítási feladatok kiépítését és futtatását. Az Azure Functions egy kiszolgáló nélküli számítási szolgáltatás, míg az Azure Logic Apps egy kiszolgáló nélküli munkafolyamat-integrációs platform. Mindkettő összetett vezényléseket hozhat létre. Az orkesztráció olyan függvények gyűjteménye, amelyeket az Azure Logic Apps-ben műveleteknek neveznek, és amelyeket futtathat egy összetett feladat elvégzéséhez. Egy rendelésköteg feldolgozásához például előfordulhat, hogy egy függvény számos példányát párhuzamosan hajtja végre, megvárja, amíg az összes példány befejeződik, majd végrehajt egy függvényt, amely kiszámítja az eredményt az összesítésen.
Az Azure Functions esetében az orchestration-folyamatok fejlesztéséhez kódot ír, és a Durable Functions bővítményt használja. Az Azure Logic Appshez vizuális tervezővel vagy Azure Resource Manager-sablonok szerkesztésével hozhat létre folyamatokat.
Vezénylés létrehozásakor kombinálhatja és egyeztetheti a szolgáltatásokat. Meghívhat például függvényeket logikai alkalmazás-munkafolyamatokból, és meghívhat logikai alkalmazás-munkafolyamatokat függvényekből. A vezénylések építésének módját a szolgáltatások képességei vagy a személyes preferenciái szerint választhatja ki. Az alábbi táblázat néhány fő különbséget sorol fel a szolgáltatások között:
A Functions és a WebJobs összehasonlítása
Ugyanúgy, mint az Azure Functions, az Azure App Service WebJobs a WebJobs SDK-val is olyan integrációs szolgáltatás, ahol a kód a kiindulási pont, és mindkettőt fejlesztők részére tervezték. Mindkettő az Azure App Service szolgáltatásra épül, és támogatják többek között a következő funkciókat: verziókövetés integrálása, hitelesítés és Application Insights-integrációs monitorozás.
A WebJobs és a WebJobs SDK
Az App Service WebJobs funkciójával szkriptet vagy kódot futtathat egy App Service-webalkalmazás kontextusában. A WebJobs SDK egy, a WebJobshoz tervezett keretrendszer, amely leegyszerűsíti az Azure-szolgáltatások válaszadására írt kódokat. Egy, az Azure Storage-ban létrehozott képblobra például válaszolhat egy miniatűr létrehozásával. A WebJobs SDK .NET-konzolalkalmazásként fut, amelyet üzembe helyezhet egy WebJobon.
A WebJobs és a WebJobs SDK együtt működnek a leghatékonyabban, de használhatja az egyiket a másik nélkül is. A WebJobs képes bármilyen programot vagy szkriptet futtatni, amely képes futni az App Service tesztkörnyezetben. A WebJobs SDK-konzolalkalmazások bárhol futtathatók, ahol konzolalkalmazások futtathatók, például a helyszíni kiszolgálókon.
Összehasonlító táblázat
Az Azure Functions a WebJobs SDK-ra épül, így sok, más Azure-szolgáltatásokkal közös eseményindítóval és kapcsolattal rendelkezik. Az Alábbiakban néhány tényezőt érdemes figyelembe venni, amikor az Azure Functions és a WebJobs SDK között választ:
Függvények | WebJobs WebJobs SDK-val | |
---|---|---|
Kiszolgáló nélküli alkalmazásmodellautomatikus skálázással | ✔ | |
Fejlesztése és tesztelés böngészőben | ✔ | |
Használatalapú fizetés | ✔ | |
Integráció a Logic Apps szolgáltatással | ✔ | |
Eseményindítók |
Időzítő Azure Storage üzenetsorok és blobok Azure Service Bus – üzenetsorok és témakörök Azure Cosmos DB Azure-eseményközpontok HTTP/WebHook (GitHub, Slack) Azure Event Grid |
Időzítő Azure Storage üzenetsorok és blobok Azure Service Bus – üzenetsorok és témakörök Azure Cosmos DB Azure-eseményközpontok Fájlrendszer |
Támogatott nyelvek | C# F# JavaScript Java Python PowerShell |
C#1 |
Csomagkezelők | npm és NuGet | NuGet2 |
1 WebJobs (a WebJobs SDK nélkül) olyan nyelveket támogat, mint a C#, Java, JavaScript, Bash, .cmd, .bat, PowerShell, PHP, TypeScript, Python stb. A WebJobs képes bármilyen programot vagy szkriptet futtatni, amely képes futni az App Service tesztkörnyezetben.
A 2 WebJobs (a WebJobs SDK nélkül) támogatja az npm-et és a NuGetet.
Összegzés
Az Azure Functions nagyobb fejlesztői produktivitást nyújt, mint az Azure App Service WebJobs. Emellett további lehetőségeket is kínál a programozási nyelvekhez, a fejlesztési környezetekhez, az Azure-szolgáltatások integrációjához és a díjszabáshoz. A legtöbb forgatókönyvhöz ez a legjobb választás.
Az alábbiakban két forgatókönyvet talál, amelyek közül a WebJobs lehet a legjobb választás:
- Az eseményekre figyelő kódok nagyobb mértékű felügyeletére van szüksége –
JobHost
objektum. A Functions korlátozott számú módszert biztosít aJobHost
-viselkedés a host.json fájlban való testreszabására. Néha olyan műveleteket kell végrehajtania, amelyeket nem tud megadni egy JSON-fájlban lévő sztring használatával. Például csak a WebJobs SDK teszi lehetővé egyéni újrapróbálkozási szabályzat konfigurálását az Azure Storage-ban. - Van egy App Service-alkalmazása, amelyhez kódrészleteket szeretne futtatni, és közösen szeretné őket kezelni ugyanabban az Azure DevOps-környezetben.
Más forgatókönyvek esetén, ahol kódrészleteket szeretne futtatni az Azure vagy külső szolgáltatások integrálásához, válassza inkább az Azure Functionst a WebJobs helyett a WebJobs SDK-val.
A Power Automate, a Logic Apps, a Functions és a WebJobs együttes használata
Nem kell csak egyet választania ezek közül a szolgáltatások közül. Integrálhatók egymással és külső szolgáltatásokkal.
A Power Automate-folyamatok meghívhatnak egy Azure Logic Apps-munkafolyamatot. Az Azure Logic Apps-munkafolyamatok meghívhatnak egy függvényt az Azure Functionsben, és fordítva. Lásd például az Azure Logic Appsszel integrálható függvények létrehozását.
A Power Automate, az Azure Logic Apps és a Functions között a szolgáltatások közötti integrációs élmény idővel tovább javul. Egy összetevőt egy szolgáltatásban hozhat létre, és ezt az összetevőt használhatja a többi szolgáltatásban.
Az integrációs szolgáltatásokkal kapcsolatos további információkért tekintse meg az alábbi cikkeket:
- Christopher Anderson: Leveraging Azure Functions & Azure App Service for integration scenarios (Az Azure Functions és az Azure App Service használata integrációs forgatókönyvekhez)
- Charles Lamanna: Integrations Made Simple (Integráció egyszerűen)
- Azure Logic Apps Live webcast
- A Power Automate gyakori kérdései
Következő lépések
Első lépésként hozza létre az első folyamatot, a logikai alkalmazás munkafolyamatát vagy a függvényalkalmazást. Válassza ki az alábbi hivatkozások bármelyikét: