Azure Functions is a cloud technology from Microsoft with which we will be able to build functions that would be responsible for specific tasks and all subject of scaling is per function and Microsoft is responsible for it. Azure Functions can help with
- Code that does not fit into traditional or popular application architectures.
- Code that must run based on some event that happens.
- Software that must integrate with other software.
You can execute Azure Functions in either a Consumption or an App Service plan – factor to choose one or the other eg consumption, use-cases, cost…
With the Consumption plan, you do not have to worry about the dimension of your infrastructure, scaling, or pay when not utilizing any resources. Instances of your function hosts are dynamically added and removed based on the workload for your functions.
Note that functions executions time out after five minutes (default) and can be set to ten minutes maximum. Also, when using a consumption plan and your functions are idle for some time and the start-up of your functions might take longer (cold start).
The Consumption plan is billed based on per-second resource consumption and executions. Consumption plan pricing includes a monthly free grant of 1 million requests and 400,000 GBs of resource consumption per month per subscription in pay-as-you-go pricing across all function apps in that subscription.
App Service Plan
For the App Service plan, however, you do need to allocate resources for your functions explicitly and pay for them regardless of you are running functions or not.
With App Service Plan, you allocate resources you need, which are always available (hence no cold start). In case you need to support long-running processes with Functions then the App Service Plan is a better choice. With a dedicated app service plan, the execution timeout can be changed to unlimited which will give the scope for long-running processes.
Premium plan provides enhanced performance and is billed on a per-second basis based on the number of vCPU-s and GB-s your Premium Functions consume.
- Note: A storage account is created by default with each Functions app. The storage account is not included in the free grant.
Some of the Business Benefits of Azure Functions include:
- It can accelerate and simplify application development with serverless compute
- More productive app development process, an event-driven serverless compute platform that can also solve complex orchestration problems
- It helps in processing data and coordinating with different systems for IoT
- It helps in building simple APIs and microservices
- Handle events at scale with minimal cost
- Build and debug locally without additional setup, deploy and operate at scale in the cloud, and integrate services using triggers and bindings