Identifiera Azure Functions

Slutförd

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.