Skip to main content

Serverless Computing with Azure Functions

Course

Intro Video

Photo of Michael Heydt

Michael Heydt

Azure Training Architect II in Content

I am a passionate technologist, evangelist and developer that thrives on learning emerging technologies, and with teaching others leverage digital transformation. I think in terms of mobile / cloud first, automate everything, design for failure and elasticity, build everything as self-contained microservices, and continuously monitor, deploy and update. I have an emphasis on Microsoft technologies, but I also have experience with multiple development and cloud platforms, and take pride my ability to create heterogeneous solutions. I'm a big fan of cross platform .NET, particularly with it on Linux on Azure.I hold multiple cloud and application platform, architecture, and development certifications, and also hold an MS from Drexel University in Mathematics and Computer Science, an Executive Masters in Technology Management from Penn/Wharton, and a certificate of Advanced Study from the University of Denver in Telecommunications Technology. I am former adjunct faculty at the University of Denver CIS and Telecommunications departments, and was a Microsoft Certified Trainer of MCSE courses for the University of Phoenix AATP program in Denver.

Length

09:49:01

Difficulty

Intermediate

Videos

29

Hands-on Labs

12

Course Details

This course gives the student a deep dive into the use of Azure Functions, including the use of several tools for creating, running, and operating Azure Functions.

Students should have a basic understanding of Azure and software development, be able to access a Windows virtual machine in Azure, and have fundamental knowledge of C#, Azure CLI, and a little bit of PowerShell.

Syllabus

Course Introduction

Welcome to the Course

Course Introduction

00:03:04

Lesson Description:

This course is intended for students wanting to learn and develop Azure Functions. Students should be experienced in software development concepts, C#, and Azure concepts. We'll be developing functions in C# and running them both locally and in Azure. This deep dive course covers the development of Azure Functions. It also dives into using durable functions, version management, configuration management, monitoring, scalability, and security.

About the Training Architect

00:01:15

Lesson Description:

This introductory session introduces the instructor for this course, Michael Heydt.

Azure Functions Introduction

Azure Functions Basics

Serverless Computing and Azure Functions

00:08:07

Lesson Description:

Before we dive into coding Azure Functions, let's first take a look at several concepts in serverless computing. This gives us a mental framework for understanding how Azure Functions work.

Essential Concepts in Azure Functions

00:05:24

Lesson Description:

Before we dive into coding Azure Functions, let's go over several concepts we will see when we code and operate Azure Functions. This will give us a perspective on all the pieces involved in Azure Functions, as well as their development and operations.

Hosting Azure Functions

00:07:14

Lesson Description:

Wait, aren't Azure Functions serverless? So why do we have to host them? We'll cover the reasons why in this lesson.

Real-World Uses for Azure Functions

00:05:15

Lesson Description:

In this last overview lesson, we go over several practical uses for Azure Functions. This gives us a foundation for understanding several ways they are used in the real world.

Developing Azure Functions

Creating Functions in the Portal

Create a Function App in the Portal

00:07:22

Lesson Description:

In this lesson, we create a function app using the Portal. This involves specifying a hosting plan and creating an Azure App Service that will eventually run one or more Azure Functions.

Create and Run a Function in the Portal

00:05:13

Lesson Description:

In this lesson, we create and run an Azure Function using the Azure Portal. During this, we use the Portal to add the function to the previously-created function app and run it!

Exploring the HTTP Trigger Function and App, Part 1

00:07:52

Lesson Description:

Now that we have a function up and running, let's examine several things about the app, including how the HTTP function works and is coded.

Exploring the HTTP Trigger Function and App, Part 2

00:02:03

Lesson Description:

We continue the lesson on HTTP-triggered functions and examine how to declare both the function name and binding using C# attributes.

Exploring the HTTP Trigger Function and App, Part 3

00:04:51

Lesson Description:

Now that we have a function up and running, let's examine several things about the app, including how the HTTP function works and is coded.

Hands-on Labs are real live environments that put you in a real scenario to practice what you have learned without any other extra charge or account to manage.

00:30:00

Developing Functions Locally

Introduction to Azure Functions Core Tools

00:03:06

Lesson Description:

We do not have to build Azure Functions using the Azure Portal. It's mostly done locally on a development system, and then the apps are pushed into Azure when complete. In this lesson, we get introduced to Azure Functions Core Tools, an open source (but made and supported by the Azure Functions team) project that helps us build, run, test, and deploy functions from our local development system.

Creating and Running a Function Locally

00:05:23

Lesson Description:

In this lesson, we create a function and run it locally on a development system using Azure Functions Core Tools.

Deploying a Function App to Azure with the CLI

00:03:23

Lesson Description:

Now that we have built and run a function app locally, let's use the capabilities of Azure Functions Core Tools to push the functions app into Azure and run it in the cloud.

Hands-on Labs are real live environments that put you in a real scenario to practice what you have learned without any other extra charge or account to manage.

00:30:00

Hands-on Labs are real live environments that put you in a real scenario to practice what you have learned without any other extra charge or account to manage.

00:30:00

Hands-on Labs are real live environments that put you in a real scenario to practice what you have learned without any other extra charge or account to manage.

00:45:00

Hands-on Labs are real live environments that put you in a real scenario to practice what you have learned without any other extra charge or account to manage.

00:45:00

Functions with Event Grid, Timers, and CosmosDB

Timer-Based Functions

00:02:55

Lesson Description:

The Timer Trigger let's us run a function on a fixed interval or at specific times. In this lesson, we create an Azure Function that runs on a Timer Trigger and examine it being called on a regular basis.

Event Grid Trigger Functions

00:08:24

Lesson Description:

In this lesson, we learn how to create an Event Grid Trigger function and wire it up to blob creation events. We even create a blob and run the function!

Output JSON Data to CosmosDB

00:08:24

Lesson Description:

Data can flow out of Azure Functions and into other services. In this lesson, we demonstrate how to use output bindings to have a new document written into CosmosDB via an output parameter of the Azure Function.

Hands-on Labs are real live environments that put you in a real scenario to practice what you have learned without any other extra charge or account to manage.

00:30:00

Hands-on Labs are real live environments that put you in a real scenario to practice what you have learned without any other extra charge or account to manage.

00:45:00

Hands-on Labs are real live environments that put you in a real scenario to practice what you have learned without any other extra charge or account to manage.

00:30:00

Diving Deeper into Functions

Long-Running and Durable Functions

Overview of Durable Functions

00:05:34

Lesson Description:

In this lesson, we introduce the concept of Azure Durable Functions.

Implementing Durable Functions

00:11:44

Lesson Description:

In this lesson, we look at how to create an orchestrated durable function.

Patterns in Durable Functions

00:09:45

Lesson Description:

In this lesson, we examine several common patterns of usage for Azure Durable Functions.

Hands-on Labs are real live environments that put you in a real scenario to practice what you have learned without any other extra charge or account to manage.

00:30:00

Managing Functions

Using Deployment Slots

00:09:47

Lesson Description:

Newer versions of the Azure Functions runtime provides the capability for application deployment slots. These slots let us simultaneously deploy multiple instances of our function app and swap between them. One reason this could be valuable is to change versions. In this lesson, we'll provide an overview of slots and also demonstrate how to use them.

Managing Configurations

00:06:13

Lesson Description:

In this lesson we will examine how you can manage configuration, in particular, using environment variables, to pass configuration data into functions.

Version Management

00:06:31

Lesson Description:

What do we do if we want to update a running functions implementation? In this lesson, we introduce several strategies for upgrading and versioning functions.

Monitoring and Logging

00:06:17

Lesson Description:

In this lesson, we explore how to monitor and perform logging in Azure Functions with Application Insights.

REST-Based APIs for Functions with Proxies

00:05:01

Lesson Description:

In this lesson, we explore several means of implementing REST APIs with Azure Functions with a specific focus on Azure Function proxies.

High Availability and Disaster Recovery

00:04:47

Lesson Description:

In this lesson, we cover several techniques for providing high-availability and disaster recovery for our function applications.

Scalability

00:06:07

Lesson Description:

Azure Functions are highly scalable, but not infinitely so. In this lesson, we cover several techniques we need to understand in order to manage the scalability of our Azure Functions applications.

Security

00:05:37

Lesson Description:

In this lesson, we examine several of the techniques that can be used to secure our Azure Functions.

Hands-on Labs are real live environments that put you in a real scenario to practice what you have learned without any other extra charge or account to manage.

00:45:00

Hands-on Labs are real live environments that put you in a real scenario to practice what you have learned without any other extra charge or account to manage.

00:30:00

Hands-on Labs are real live environments that put you in a real scenario to practice what you have learned without any other extra charge or account to manage.

00:30:00

Course Conclusion

Final Steps

What's Next?

00:02:09

Lesson Description:

This video discusses the next steps for being an Azure developer, how to get recognized and be a part of the Linux Academy community, giving feedback on the course, and a big thanks from your instructor!

Take this course and learn a new skill today.

Transform your learning with our all access plan.

Start 7-Day Free Trial