Identifiera Azure Functions
Azure Functions är en serverlös lösning som gör att du kan skriva mindre kod, underhålla en mindre infrastruktur och spara på kostnader. I stället för att oroa dig för att distribuera och underhålla servrar tillhandahåller molninfrastrukturen alla uppdaterade resurser som behövs för att hålla dina program igång.
Vi skapar ofta system för att reagera på en rad kritiska händelser. Oavsett om du skapar ett webb-API, svarar på databasändringar, bearbetar IoT-dataströmmar eller till och med hanterar meddelandeköer behöver varje program ett sätt att köra kod när dessa händelser inträffar.
Azure Functions stöder utlösare, som kan användas för att starta körning av din kod, och bindningar, som kan användas för att förenkla kodning för in- och utdata. Det finns andra integrerings- och automatiseringstjänster i Azure och de kan alla lösa integreringsproblem och automatisera affärsprocesser. Samtliga tjänster definierar indata, åtgärder, villkor och utdata.
Jämföra Azure Functions och Azure Logic Apps
Både Functions och Logic Apps är Azure-tjänster som möjliggör serverlösa arbetsbelastningar. Azure Functions är en serverlös beräkningstjänst, medan Azure Logic Apps är en serverlös arbetsflödesintegreringsplattform. Båda kan skapa komplexa orkestreringar. En orkestrering är en samling funktioner eller steg, som kallas åtgärder som utförs i Logic Apps, som körs för att utföra en komplicerad uppgift.
Med Azure Functions utvecklar du orkestreringarna genom att skriva kod och använda tillägget Varaktiga funktioner. Med Logic Apps skapar du orkestreringarna genom att använda ett grafiskt användargränssnitt eller redigera konfigurationsfiler.
I följande tabell visas några av de viktigaste skillnaderna mellan Functions och Logic Apps:
Område | Azure Functions | Logic Apps |
---|---|---|
Utveckling | Kod först (imperativt) | Design först (deklarativt) |
Anslutning | Runt ett dussin inbyggda bindningstyper, skriv kod för anpassade bindningar | Stor samling med anslutningsappar, Enterprise-integrationspaket för B2B-scenarier, skapa anpassade anslutningsappar |
Åtgärder | Varje åtgärd är en Azure-funktion. Skriv kod för åtgärdsfunktioner | Stor samling färdiga åtgärder |
Övervakning | Azure Application Insights | Azure-portalen och Azure Monitor-loggar |
Hantering | REST API, Visual Studio | Azure-portalen, REST API, PowerShell och Visual Studio |
Körningskontext | Körs i Azure eller lokalt | Körs i Azure, lokalt eller lokalt |
Jämföra Functions och WebJobs
Liksom Azure Functions är Azure App Service WebJobs med WebJobs-SDK:n en kodfokuserad integreringstjänst som är avsedd för utvecklare. Båda bygger på Azure App Service och stöder funktioner som källkontrollsintegration, autentisering och övervakning med Application Insights-integration.
Azure Functions bygger på WebJobs-SDK:n, och delar därför många händelseutlösare och anslutningsappar med andra Azure-tjänster. Här är några faktorer som du bör tänka på när du väljer mellan Azure Functions och WebJobs med WebJobs-SDK:n:
Faktor | Funktioner | WebJobs med Webjobs-SDK:n |
---|---|---|
Serverlös appmodell med automatisk skalning | Ja | Nej |
Utveckla och testa i webbläsaren | Ja | Nej |
Betala per användning | Ja | Nej |
Integrering med Logic Apps | Ja | Nej |
Utlösarhändelser | Timer Azure Storage-köer och blobar Azure Service Bus-köer och ämnen Azure Cosmos DB Azure Event Hubs HTTP/WebHook (GitHub Slack) Azure Event Grid |
Timer Azure Storage-köer och blobar Azure Service Bus-köer och ämnen Azure Cosmos DB Azure Event Hubs Filsystem |
Azure Functions ger mer produktivitet för utvecklare än Azure App Service WebJobs. Det har även fler alternativ för programmeringsspråk, utvecklingsmiljöer och Azure-tjänstintegrering och priser. I de flesta scenarierna är detta det bästa alternativet.