Azure Functions is the serverless alternative for Azure. Serverless computing is changing the whole complex application architecture these days. Serverless computing relieves the developer from the stress of handling cloud infrastructure. Especially when developing complex applications, the serverless feature tends to make a big impact. Let take a look into what is Azure functions and what are the key features it offers
Introduction to Azure functions
As mentioned above, Azure functions is Azure’s serverless alternative which allows a developer to execute a block of code which is called a function without stressing about the applications infrastructure. By using Azure Functions, the cloud infrastructure provides us with all the up-to-date servers you will need to keep your application running at scale.
Functions are “triggered” by a specific type of event in Azure. These triggers which are known as Supported triggers include responding to changes in data, responding to messages, running on a schedule, or as the result of an HTTP request.
Azure functions gives us the flexibility to code directly against countless services. When integrating with other services in Azure functions, these are streamlined using bindings, which gives a developer declarative access to a wide variety of Azure and third-party services.
Features of Azure functions
1. Azure functions allow you to develop a serverless based application on Microsoft Azure platform.
2. Azure functions support multiple programming languages such as C#, Java, Python, Javascript & Power-shell.
3. Azure gives it’s user flexible pricing plans, where as users can pay just for the time spent running the code. Azure pricing plan.
4.Developers have the flexibility of using Nuget and NPM libraries.
5.Ability to protect HTTP based functions using an OAuth provider such as Azure Active Directory, Facebook, Google, Twitter, and Microsoft Account.
6.Easy integration with Azure services and software-as-a-service (SaaS) offerings.
7. Flexibility to set up continuous deployment using Github, Azure DevOps and other supported platforms.
8.Developers can organize stateful serverless architecture using Durable Functions.
Functions can be used for processing bulk data, integrating systems, working with the internet-of-things (IoT), and building simple APIs and micro-services.
Azure provides developers with templates to get started with some of the following mostly used senarios,
- HTTP: Run code based on HTTP requests
- Timer: Schedule code to run at predefined times
- Azure Cosmos DB: Process new and modified Azure Cosmos DB documents
- Blob storage: Process new and modified Azure Storage blobs
- Queue storage: Respond to Azure Storage queue messages
- Event Grid: Respond to Azure Event Grid events via subscriptions and filters
- Event Hub: Respond to high-volumes of Azure Event Hub events
- Service Bus Queue: Connect to other Azure or on-premises services by responding Service Bus queue messages
- Service Bus Topic: Connect other Azure services or on-premises services by responding to Service Bus topic messages
Costing
Azure offers 3 main pricing plans. Based on the requirements of the application these plans can be choose.
1. Consumption plan– All of the necessary computational resources are provided by Azure. Customer is charged just for the time the code runs.
2. Premium plan – Specify pre-warmed instances that need to be used. If any additional computational resources are needed Azure will provide it. The customer needs to pay just for the pre-warmed instances running continuously and any additional instances you use as Azure scales your app in and out.
3.App Service plan– This plan is similar to the app service plan. You can run your functions in your app service plan without additional cost.
For more information about hosting plans, see Azure Functions hosting plan comparison. Full pricing details are available on the Functions Pricing page.