Scenario: Application
- Customer: I have an application which should be running on the cloud. The application is very specific and not used all the time (approximately used 4 hours (average) in a day). I want to know the hosting options in azure
- Customer problem statement: I want to be billed/charged only when my application is used by customers
- The above problem can be resolved using Serverless computing (Azure Functions)
Serverless
- This a cloud computing execution model where the cloud services provider run the server, manages the allocation of machine resources and Pricing is based on actual amount of resources consumed by application, rather than on resources pre-purchased.
- Serverless is also known as Function as a Service(FaaS)
- Examples:
- AWS Lambda
- Google Cloud functions
- Azure Functions
- Serverless database have emerged
- Amazon Aurora offers serverless
- Azure SQL Server offers serverless
- Advantages:
- Cost
- Scaling is automatic
- Disadvantages
- No Standardization
Azure Functions
- Allows us to run small pieces of code called as functions without managing/creating application infrastructure as Azure manages it internally
- A function is triggered by event (type).
- Azure functions can be written using
- C#
- Java
- JavaScript
- Python
- Powershell
- Possibilities:
- Run/Execute function based on Http(s) requests
- Schedule azure functions to be executed on specific times
- Pricing Models
- Consumption
- Premium Plan
- App Service Plan
Creating Azure Function app using Azure Portal
-
Create a resource Function App
-
Exercise: Create a Azure Function with Python runtime and Linux Os.