Cloud Academy
  1. Home
  2. Training Library
  3. Microsoft Azure
  4. Courses
  5. Introduction to Azure Functions

Core Features


Course Intro
Serverless in Context
In Context
Getting the Most From Azure Functions
Use Cases
2m 27s
3m 33s

The course is part of these learning paths

AZ-204 Exam Preparation: Developing Solutions for Microsoft Azure
course-steps 15 certification 1 lab-steps 8
AZ-203 Exam Preparation: Developing Solutions for Microsoft Azure
course-steps 20 certification 1 lab-steps 7
Developing, Implementing and Managing Azure Infrastructure
course-steps 10 certification 7 lab-steps 2
more_horiz See 1 more
Start course
Duration1h 34m
star star star star star-half


An Introduction to Azure Functions

Serverless Computing has emerged as a capable and low-friction means to execute custom logic in the public cloud. Whether you're using Amazon Lambda, Google Cloud Functions, or Azure Functions, you have a wide variety of target languages, ecosystem integrations, and deployment mechanisms to choose from. All this while leaving the heavy lifting of server provisioning and maintenance to the experts, which gives you plenty of time to focus on your differentiated application functionality.

In this "Introduction to Azure Functions" course, you’ll learn how to build Azure Function applications in the cloud. You'll discover the core feature set of Functions and see how to integrate with a variety of sibling Azure services. You'll explore Function topics like security, monitoring, deployment, and testing best practices. You'll also learn about ideal Functions use cases and the pricing model. Finally, you'll learn about how we've arrived at the serverless computing model, and where serverless is likely to go in the future. By the end of this course, you’ll have a solid foundation to continue exploring Functions on your own, and incorporating Azure Functions capability into your work.

An Introduction to Azure Functions: What You'll Learn

Lecture What you'll learn
Intro What to expect from this course
Serverless Computing In Context Understanding what serverless computing is, and how we got here
Core Features A high-level overview of what Azure Functions is, and its basic capabilities
Creating Your First Function A demo of creating your first function in the Azure portal
Security A review of security features in Azure Functions
Using API Key Management A demo of configuring an Azure Function to require API key use
HTTP Proxies A discussion of lightweight HTTP Proxy support
Proxying Azure Blob Storage A demo of using Functions' HTTP Proxy support to front Azure blob storage
Triggers and Bindings Event-based triggering of functions and declarative binding of inputs and outputs
Triggering on Queues and Binding to DocumentDB A demo of Triggering with Azure Queues and Binding Function Output to DocumentDB
Testing and Debugging Tools and techniques for working with Functions during the development cycle
Deployment Options for deploying Azure Function apps into production
Deploying From a Local Git Repo A demo of deploying a complete Azure Function app to the cloud, from a local Git repository
Monitoring Tools for monitoring Azure Functions during dev, test, and release
Use Cases A discussion of ideal use cases for serverless compute and Azure Functions
Pricing A review of how Functions are priced, and a demo of determining price using the Azure Pricing Calculator
Serverless in the Future A short discussion on the future of serverless in the cloud
Summary Course wrap up

If you have thoughts or suggestions for this course, please contact Cloud Academy at


Let's review the major features in Azure Functions and demonstrate how they're used to create scalable cloud-hosted programming logic.

Azure Functions are a fully managed, functions-as-a-service offering that lets you author and deploy executable code in logical units as small as a single code function.

A function app is a logical container of one or more discreet named functions. Function apps provide aggregate configuration for things like SSL, cross-origin resource sharing, or CORS policy, diagnostics and monitoring, deployment options, role-based access control and more. Function apps are built on the Azure App Service PaaS technology. A function app is itself a Azure web app with a custom, function-specific runtime and management facade.

Individual functions are exactly what they sound like, typically small chunks of code with well-defined inputs. Functions are ideally short lived and execute in small bursts of activity completing their work within a few seconds or less. They're also stateless. Any data or additional information needed to perform their work is acquired either via binding behavior, to be discussed later in the course, or acquired using custom logic during execution.

Azure functions can be authored in a number of popular languages. .NET developers will feel right at home with support for C#, F# and tools like NuGet package management. Node.js developers can write function logic in JavaScript and use NPM to pull independent libraries as needed. Other languages like PHP and Python are also supported. You can author and execute batch files or even PowerShell or Bash scripts too. And if you wish, all of this can be done right in your browser with no IDE needed.

Also, an interesting feature of Azure Functions is the ability to pre-compile .NET code on your local machine and associate it with a function app using configuration metadata. This lets you author code locally and still have the granular deployment and execution experience of serverless compute in Azure.

Finally, note that Azure functions can either be manually invoked or triggered from some external event. Supported triggers include HTTP and webhook requests, storage blob or queue activity, and message arrival in Azure service bus or event hubs. One additional trigger option is to use a recurring timer so that a function could execute say every so many seconds or so many hours.

As already noted, functions are built on the existing Azure App Service. If you're familiar with building web apps in Azure you already know most of what you need to configure, deploy and manage function apps too. Connection strings, custom domain configuration, access control, LOB streaming and other monitoring tools and so on are largely the same in both web apps and function apps.

Now let's take a look at how easy it is to build function apps using your browser in the Azure portal.

About the Author

Josh Lane is a Microsoft Azure MVP and Azure Trainer and Researcher at Cloud Academy. He’s spent almost twenty years architecting and building enterprise software for companies around the world, in industries as diverse as financial services, insurance, energy, education, and telecom. He loves the challenges that come with designing, building, and running software at scale. Away from the keyboard you'll find him crashing his mountain bike, drumming quasi-rythmically, spending time outdoors with his wife and daughters, or drinking good beer with good friends.