Azure Functions Tutorial: A Beginner's Guide with Real-World Examples

Azure Functions Tutorial: A Beginner's Guide with Real-World Examples

29 Oct 2024
Beginner
893 Views
13 min read

 Microsoft Azure Functions

Azure Functions is a service, for serverless computing that lets you run code based on events without needing to set up or handle infrastructure directly. This approach lets developers concentrate on creating applications by writing functions in programming languages that respond to events. Azure Functions offers a platform that can automatically scale charges based on resource use and connect smoothly with Azure services.

In this Azure Tutorial, We will learn more about Azure functions including how Azure functions work, uses of Azure functions, Understanding Metrics, and Creating Azure Functions using Visual Studio.

Working of Azure Functions

Azure Functions work on a serverless setup so developers don't have to handle server management.

Let me explain how Azure Functions operate;

  • Triggers kick off functions. These triggers can come from places, like HTTP requests, scheduled timers, or events from services such as Azure Blob Storage, Azure Cosmos DB or Azure Event Hubs.
  • Bindings serve as the link between functions and other services without the need, for writing code.
  • Azure Functions operates on a serverless architecture, meaning developers do not need to worry about managing servers.

Working of Azure Functions

Who uses Azure Functions?

Azure Functions is used by a wide range of organizations and developers for various purposes:

1. Web and Mobile Developers

To build APIs, process data, and handle events asynchronously.

2. IoT Solutions

For processing data streams and executing actions based on real-time data.

3. Data Processing

This is for real-time or batch processing of data from multiple sources.

4. Automation

To automate tasks and workflows, such as sending notifications or processing orders.

5. Enterprise Applications

This is for extending existing applications with new functionalities without deploying additional infrastructure.

How are Azure Functions tools used?

Azure Functions can be. Handled using a variety of tools, from both Microsoft and third-party providers;

  •  Azure Portal: A web-based platform for building, overseeing, and tracking functions.
  • Visual Studio: An all-in software environment that provides templates debugging features, and deployment options.
  • Visual Studio Code: A code editor that works across platforms and offers extensions tailored for Azure Functions development.
  • Azure CLI: A command line tool designed for managing Azure resources, including Azure Functions.
  • Azure DevOps: Used for CI/CD pipelines to automate the processes of building, testing, and deploying functions. 

Understanding Metrics

Metrics monitoring and comprehension are essential for identifying and optimizing Azure Functions. Azure offers a number of metrics to assist you in understanding the functionality and performance of your applications.

  • Execution count: The quantity of times a function is run is known as its execution count.
  • Execution Time: The amount of time needed to carry out a task.
  • Memory Usage: The quantity of memory that a function uses as it is being executed.
  • Error Count: The total amount of errors that arise while a function is being executed.
  • throughput: The rate at which functions are performed over time is known as throughput.

These metrics can be tracked through Application Insights, the Azure Portal, or integration with third-party tracking programs.

Creating an Azure Functions using Visual Studio 

Creating an Azure Function using Visual Studio is as follows 

Step 1: Install the Tools

  • Ensure you have Visual Studio installed with the Azure development workload.

Step 2: Create a New Project

  • Go to File => New => Project, search for “Azure Functions,” and select the “Azure Functions” template.

Creating an Azure Functions using Visual Studio

Step 3: Configure the Function

  • Choose the trigger type (e.g., HTTP trigger) and configure any necessary settings.

Step 3: Configure the Function

  • Click on the Create button.
  • Rather than being called straight from an app, the Azure functions are triggered by an event.
  • In your Azure function application, you may define the kind of event that will cause the functions to start.
  • You can see the Azure function activated on the next screen.
  • Since the program is being executed locally, leave the storage account option set to storage emulator and the authorization level selected as "Anonymous."
  • Next, pick HTTP Trigger from Azure Function V3(.Net Core). Finally, select the create

Next, pick HTTP Trigger from Azure Function V3(.Net Core). Finally, select the create

Step 4: Coding

  • Implement the logic for your function within the provided template.
  • The default function code and file, Function1.cs, are there when we first open Visual Studio

Step 4: Coding

Step 5: Running and Testing 

  • Use the local debug environment to test your function.
  • Let's run and implement it now.
  • For local testing and operation of Azure functionalities, Visual Studio offers an emulator for Azure Storage.
  • Use F5 to build and launch the application.
  • You'll notice that the emulator for Azure Storage is starting.

Step 5: Running and Testing

  • The next screen will be func.exe show, ng this message that your function is ready and can be used.

The next screen will be func.exe show, ng this message that your function is ready and can be used.

  • As you can see from the above screen, the Azure functions, Function 1 has GET, and POST.
  • The URL is http://localhost:7071/api/Function1. This is the URL you can use to execute the function.
  • Let's type this URL in our local browser and pass a query string with a value.
  • Then, the output looks like the following: the function takes the query string input and displays it on the screen.

Then, the output looks like the following: the function takes the query string input and displays it on the screen.

Step 6: Publishing Azure Functions

  • Your Azure functions application may now be published straight from Visual Studio or Visual Studio Code.
  • Right-click on the project name in my Visual Studio project and choose Publish.
  • It will bring up the Publish screen, where you may choose to deploy your app to Azure, Docker, or other directories.
  • In this instance, I go with Azure.

Step 6: Publishing Azure Functions

  • You must choose from the Windows, Linux, or App Container operating systems for Azure function apps on the following screen.
  • I go with Windows.

I go with Windows.

  • On the following screen, you will need to enter the function app's name, an Azure subscription, a resource group, a plan type, a location, and Azure Storage to deploy and run an Azure functions app.

On the following screen, you will need to enter the function app's name, an Azure subscription, a resource group, a plan type, a location, and Azure Storage to deploy and run an Azure functions app.

An App Service will be created when the Create button is clicked.

An App Service will be created when the Create button is clicked.

  • This could be a lengthy procedure. Hold on till the screen below appears after it is finished.
  • You will see the Function instance on the screen below. Press the "Finish" button.

You will see the Function instance on the screen below. Press the "Finish" button.

  • After it's all done, you'll return to the Publish page and see the Site URL, configuration, and the user name and password that the functions app has been automatically issued.
  • For future reference, you might want to COPY the site URL.

For future reference, you might want to COPY the site URL.

  • Press the "Publish" button.
  • The process of publishing will begin.

  • You will get the message "Publish succeeded" once the publishing is complete.

  • You may now copy the Site URL into a browser to make sure the function app is published.
  • A notification stating that your functionalities app is operational will appear.
  • Now, you're ready to consume this function app.

Azure Functions Pricing and Limits

1. Pricing

Azure Functions offers flexible pricing models:

  • Consumption Plan: Pay-per-execution, with costs based on the number of executions, execution time, and memory consumption.
  • Premium Plan: Provides enhanced performance, VNET integration, and unlimited execution duration. Pricing is based on the number of core seconds and memory allocated.
  • Dedicated Plan: Functions run on dedicated VMs, providing consistent performance with predictable costs based on VM size.

2. Limits

  • Execution Timeout: Consumption plan functions can run for up to 5 minutes by default (extendable to 10 minutes), while Premium and Dedicated plans have configurable timeouts.
  • Memory: Functions can use up to 1.5 GB of memory in the Consumption plan.
  • Concurrent Executions: There are limits on the number of concurrent function executions, which vary based on the plan.
Conclusion

Azure Functions is a self serverless application, for computing on demand. In this article, the focus was on clarifying the role of Azure Functions apps outlining their benefits and identifying scenarios where they may not be suitable. We used  Visual Studio to build an Azure Functions application. Also, go through our Microsoft Azure Certification Course for a better understanding of Azure concepts.

Azure Certifications
Microsoft Azure Certification Exams: Role-based Paths
Microsoft Certification Exams
Microsoft Certified Azure Developer Associate AZ-203 Training Course
How to become a Microsoft Certified Azure Administrator: AZ-103 Exam
Similar Articles of Azure
Top 15 Amazing Azure Components
Scaling Up and Scaling Out in Azure
What is Serverless Computing? Exploring Azure Functions
Interview Preparation
Top 50 Azure Administrator Interview Questions and Answers
Top 50 Azure Interview Questions and Answers

FAQs

We can use Functions to build web APIs, respond to database changes, process IoT streams, manage message queues, and more.

Azure Functions is a language-specific code project that implements one or more units of code execution called functions.

Azure Functions provide a way to secure HTTP function endpoints during development 

Take our Azure skill challenge to evaluate yourself!

In less than 5 minutes, with our skill challenge, you can identify your knowledge gaps and strengths in a given skill.

GET FREE CHALLENGE

Share Article
About Author
Shailendra Chauhan (Microsoft MVP, Founder & CEO at Scholarhat by DotNetTricks)

Shailendra Chauhan is the Founder and CEO at ScholarHat by DotNetTricks which is a brand when it comes to e-Learning. He provides training and consultation over an array of technologies like Cloud, .NET, Angular, React, Node, Microservices, Containers and Mobile Apps development. He has been awarded Microsoft MVP 9th time in a row (2016-2024). He has changed many lives with his writings and unique training programs. He has a number of most sought-after books to his name which has helped job aspirants in cracking tough interviews with ease.
Accept cookies & close this