Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Serverless Computing with Azure Functions
Rating: 4.0 out of 5(124 ratings)
1,229 students

Serverless Computing with Azure Functions

Build applications hosted on serverless architecture using Azure Functions.
Last updated 12/2018
English

What you'll learn

  • Develop different event-based handlers supported by the serverless architecture from the Microsoft Cloud Platform: Azure.
  • Integrate Azure Functions with different Azure Services to develop enterprise-level applications.
  • Develop Azure Functions using Visual Studio along with regular development features.
  • Set up the codebase and debug it on the local machine.
  • Best practices for serverless technology and solution to the cold-start issue.
  • Implementation of a scalable and highly available solution for the chatbot use case.

Course content

4 sections95 lectures10h 0m total length
  • The Course Overview2:25

    This video provides an overview of the entire course.   

  • What are Azure Functions?9:22

    You have an idea what Azure Functions are, but you’re not sure  what all the hype is about. Can you give them a trial run without  following a lot of steps?           

    • Log into the Try AzureFunction swebsite

    • Make a timer-triggered C# function

    • Modify the log message and the schedule for the Azure Function

     

  • Setting Up Your Azure Account6:20

    In order to use Azure Functions you need an Azure account, but how do I sign up for an Azure account?           

    • Visit azure.com and click the sign up button

    • Enter your phone number and payment information

    • Confirm your details and log into your new account

     

  • Writing Your First Azure Function7:38

    You’d like to create more Azure Functions, but you want to do it  inside your Azure subscription. How do you create an Azure Function app?           

    • Log in to the Azure portal

    • Create a Function app

    • Create an HTTP Trigger/Webhook function in C# and modify it

     

  • How Does Pricing Work?9:08

    Before you go too crazy creating Azure Functions, you want to know  how you can architect your solution without breaking the bank. How can  you predict your cloud costs when you build your infrastructure using  Functions?           

    • Visit the functions pricing page

    • Calculate how many function calls you’ll need and the resource usage

    • Determine your price

     

  • JavaScript in Azure Functions with NodeJS10:25

    You may know some JavaScript, but you don’t know how you can use it in an Azure Function. What limitations are there?

    • Create a JavaScript Azure Function

    • Modify it using the built-in JavaScript functionality

    • Add external libraries

     

  • C# in Azure Functions10:45

    C# is the most popular language among .NET programmers. How to use C# in Azure Functions?           

    • Create a C# Azure Function

    • Make Functions that you can call from other Functions

    • Add multiple C# files and libraries

     

  • F# in Azure Functions12:08

    F# is growing in popularity and is a first-class citizen in Azure Functions. How to use F# in Azure Functions?           

    • Create an F# Azure Function

    • Make Functions that you can call from other Functions

    • Add multiple F# files and libraries

     

  • Python in Azure Functions10:41

    Python is a very popular language among scientists and DevOps engineers. How can you use it in Azure Functions?           

    • Create a Python Azure Function

    • Make Functions that you can call from other Functions

    • Add multiple Python files and libraries

     

  • PHP in Azure Functions9:46

    PHP is massively popular among the Open Source community. You can run your PHP scripts in Azure Functions.           

    • Create a PHP Azure Function

    • Make Functions that you can call from other Functions

    • Add multiple PHP files and libraries

     

  • Other Languages in Azure Functions4:27

    What if you are using something a little less standard? Can you use other languages on Azure Functions?           

    • Create a batch file Azure Function

    • Create a bash script Azure Function

    • Create an executable Azure Function

     

  • Introduction to Triggers and Bindings7:33

    It is important to grasp the concept of triggering a function from  an event and bind your input or output to another Azure service.           

    • Define triggers

    • Define bindings

    • Go through the different types of triggers and bindings and how to manage them

     

  • Basic Triggers12:20

    We’ve been using triggers in our previous videos without really  knowing it. We need to understand the basics of basic triggers and how  we can use some basic bindings to interact with our caller.           

    • Create a Github webhook and look at the function.json file

    • Change our HTTP trigger into a Timer trigger using the Integrate tab

    • Change our timer triggered to an HTTP trigger function by modifying the function.json file

     

  • Storage Triggers13:50

    Have you ever had to write a service to “poll” a directory or  queue to see if something happened? Do you have services that must be  called by your client until something happens? In this video, we’ll show  how you can eliminate that messy logic and replace it with Azure  Functions that fire from storage events.           

    • Create a blob-storage triggered function that resizes files. The output is bound to blob storage

    • An Azure Function that responds to queue message and process’s it. 

    • When queue message is processed, it writes it to a table

     

  • Other Triggers and Bindings5:24

    What if you have the need to trigger your Azure Function from a  stream of real-time data or from an event from Event Hub? Why would you  need this and how would you do it?           

    • Explain event hubs and the Azure Service Bus

    • Show how you’d trigger and bind to an Event Hub event 

    • Show how you’d trigger and bind from an Azure Service Bus event

     

  • Advanced Bindings13:23

    Sometimes you just need to do a little more complex job when your  function does it’s magic. In this video we’ll cover some of the more  advanced bindings.           

    • How to send an e-mail with SendGrid

    • How to send a text with Twilio 

     

  • Choosing Between Flow, Logic Apps, Azure Functions, and WebJobs7:23

    Maybe, Azure Functions aren’t the ideal approach for your  solution. You may be better served using Microsoft Flow, Logic Apps or  Azure WebJobs. How do you decide?           

    • Introduce Microsoft Flow and its strengths. Compare it with Azure Functions

    • Introduce Logic Apps and its strengths. Compare it with Azure Functions

    • Introduce Azure WebJobs and its strengths. Compare it with Azure Functions

     

  • Choosing a Hosting Plan3:04

    We’ve seen the Hosting Plan dropdown. It seems important but you  may not know what it means. Should you use a consumption plan or an App  Service plan?           

    • Introduce the consumption Plan and its strengths/weaknesses

    • Introduce the App Service Plan and its strengths/weaknesses

    • Compare the consumption plan and app service plan side by side and give examples for when you should choose one over the other

     

  • Best Practices for Azure Functions5:35

    No one wants to build something that requires continuous  maintenance. What are some tips to follow to prevent problems with our  Azure Functions down the road?           

    • Problem prevention practices

    • Performance improvement practices 

    • Defensive coding best practices

     

  • Security Concerns15:10

    In the previous video, we went over someb est practices for your  Azure Functions to help with durable, performant apps. This video will  now share some best practices for security.           

    • Share general tips

    • Show AuthLevel and how it affects security

    • Show how you can integrate with Azure Active Directory to enforce authentication at the function level

     

  • What is Serverless Architecture?6:38

    If you’re interested in Azure Functions, you’ve probably heard  about serverless architecture. However, you may not be clear on what it  means. In this video, I will help you understand what it is.           

    • Explain the traditional client-server architecture

    • Show a modern serverless architecture

    • Describe BaaS and FaaS as two competing definitions of “serverless” and point out that both are correct

     

  • Why Serverless?

    In the previous video,youlearned what a serverless architecture  is. Now let’s discover why it has becomeso popular among software  architects recently.           

    • Benefits for developers

    • Benefits for project managers

    • Benefits for the business.

     

  • Serverless Considerations6:10

    You’re excited about serverless. You may even have ported  everything over to Azure Functions in your head! Before you start  shutting down your traditional servers, let’s take a sober look at some  things that you should consider before you have 400 Azure Functions  taking over your life.           

    • Execution challenges

    • Development challenges 

    • Systems architecture challenges

     

  • Serverless Best Practices5:03

    In our previous video, we talked about some of the challenges you  may have if you rely on a serverless architecture. In this video, I’m  going to give you some hope; there are some practices you can follow  that will help you maintain your sanity in your serverless home.           

    • Follow microservices best practices

    • Keep your Functions small

    • The right tool for the job

     

  • Moving to a Serverless Architecture5:36

    In the previous video, we gave you some best practices for a  serverless architecture. Now you’re ready to start moving your big  monolithic application to lightweight Functions that don’t require you  to manage the infrastructure. In this video, I’ll give you some pointers  on moving to a serverless architecture.           

    • Start small

    • Organizational structure

    • Break up the monolith

     

  • C# Integration Tests12:31

    To ensure that your Azure Functions are running properly, you may  want to use integration tests in your projects. How would you use them  properly?           

    • Create a function app with a sum function in it

    • Create a Visual Studio solution with unit tests

    • Write tests to cover the test cases we expect

     

  • Using the Postman REST Client9:59

    Calling a sophisticated REST endpoint is hard to set up with your  browser or with an integration test. But there is a free tool that makes  it super easy. It’s called Postman. How to use the Postman tool?           

    • Show how to set up a collection with REST calls in it for your function app

    • Use environment variables and create several calls to the function

    • Set up test cases and use the rest runner

     

  • Monitoring Your Azure Functions11:55

    How can you tell if your Azure Functions are running properly?  This is really important if you’re trying to maintain a reliable  infrastructure.           

    • Show logging for individual Functions; real-time logging

    • Create a function that throws exceptions and view the exception in the logs

    • Set up application insights and show how those exceptions stick out like a sore thumb

     

  • Debugging Your Azure Functions6:35

    What if you can’t figure out why your Azure Function is failing?  Can you debug the code? Can you step through your Azure Function  remotely on the server?           

    • Install prerequisites to Visual Studio

    • Use Server explorer or Cloud Explorer to download the function script locally

    • Fix the code and re-deploy

     

  • Using Azure Functions Core Tools8:45

    Is there a good tool for developers to use for develop Azure Functions locally? Is it free and easy to use?           

    • Download and install Azure Functions Core Tools and Visual Studio Code

    • Create a new function from the command line andedit it with Visual Studio Code

    • Run and test the function running locally on your machine.

     

  • Using Git to Edit and Deploy Functions11:18

    If you’re editing Azure Functions directly in the web editor in  the Azure Portal, you’re probably going to have a big problem. Is it  possible to use source control to protect your function’s source code?  Can you use Git to automatically deploy changes to your Azure Functions?             

    • Creating an Azure Function backed by a local Git repository

    • Using Azure Functions Core Tools to develop Functions locally

    • Deploy your Functions using Git push. Rollback your function app to a previous version.

     

  • Introduction to Azure Resource Manager10:09

    When you learn about infrastructure as code in Azure, you should  learn about Azure Resource Manager, or ARM for short. It can be a little  tricky to understand, but once you start using it, you’ll want to  manage all your infrastructure with it.           

    • Cover what ARM is

    • Cover why you would use it

    • Break down a sample ARM template.

     

  • Using Azure Resource Manager with Function Apps12:16

    ARM templates for storage accounts and VMs are pretty  straightforward, but they are a little tricky with Function Apps. How  can we create a reusable template for our function apps?           

    • Show how you can download a good starting point ARM template from the Azure Portal

    • Tweak the template so that it is tied to a particular branch in a publicly-available Github repo

    • Use deployment options to create a webhook for deploying after Git pushes

     

  • Putting it All Together for Continuous Delivery9:18

    We covered some of the techniques you can use to automate  deployment in your Azure Function apps. This video will give you a  general overview and help give you some tips to use in your  organization.           

    • Recommendations of deployment configuration options (pros and cons)

    • Visual Studio versus Visual Studio Code

    • Azure Resource Manager pros and cons

     

Requirements

  • Prior knowledge and hands-on experience with core services of Microsoft Azure are required.

Description

This training program includes 4 complete courses, carefully chosen to give you the most comprehensive training possible.

The first course, Getting Started with Azure Functions, covers serverless Architecture to Build Scalable Cloud System. This tutorial starts with the basics of Azure Functions and then shows you how to create functions such as WebHooks, Azure Connected, and event processing. Moving ahead, the video demonstrates how to develop, manage, deploy, and monitor your Azure functions in almost any language such as C#, F#, Node.js, Python, PHP, as well as scripting options such as Bash, Batch, and PowerShell. Next, you'll see how to scale your functions and use them to process data, integrate systems, and build simple APIs and microservices. Finally, we'll cover some diagnostic techniques with Azure App Services and the best practices of working with Azure Functions. By the end of this tutorial, you will be well-versed with the techniques of scaling your Azure Functions and making the most of the serverless architecture.

The second course, Azure Functions - Essentials, covers getting started with the essentials of Azure Serverless Functions. The course starts with intermediate-level videos on cloud application development, along with configuring notifications using the SendGrid and Twilio services and the key features of Azure Functions. Then, you'll delve into the core aspects of Azure Functions (such as the services it provides and how you can develop and write Azure functions) and explore continuous integration and continuous deployment with Visual Studio Team Services. By the end of this video, you will have all the skills required to work with serverless code architectures, thus providing continuous delivery to your users.

The third course, Serverless Azure Functions: Debugging, Deployment, and Chatbots, covers discovering the Power of Serverless with Azure Functions, Queues and CosmosDB. Azure Functions provides great solutions for processing data, integrating systems, and building simple APIs to complex micro-services without having to worry about underlying infrastructure for scalability. This volume covers how a serverless application can be designed. By the end of the course, you'll have mastered how Azure Functions can be a great tool to design highly scalable web services. You'll also have created a production-level solution of a chatbot with serverless tools such as CosmosDB and Queues with a good understanding of why they were chosen and how they play an important role in the design of the serverless architecture.

The fourth course, Azure Functions - Best Practices, covers building applications hosted on serverless architecture using Azure Functions.

By the end of the course, you'll build applications hosted on serverless architecture using Azure Functions as well as Deploy, Monitor, Debug and Design Scalable Solutions with Azure Serverless Computing.

About the Authors :

Paul Oliver is the Principal Software Architect at Vosaic. Vosaic helps its users unlock insights with the video for education and simulations. Vosaic is closely aligned with Hudl, which is the premier video platform for sports. Before taking on the role at Vosaic, he worked as a software developer and architect in the banking and criminal justice industries. Throughout his career, he's been passionate about building well-architected software solutions with the security of primary importance. He's architected several applications in the cloud using Microsoft Azure, Amazon Web Services, and Heroku. He received his BSc in Computer Engineering from the University of Nebraska-Lincoln and his Masters of Business Administration degree from Creighton University.

Praveen Kumar Sreeram works as a Solution Architect at PennyWise Solutions (an Ogilvy and Mather Company). He has over 12 years' experience in the field of development, analysis, design, and delivery of applications of various technologies, including custom web development using ASP.NET and MVC to building mobile apps using the cross-platform technology Xamarin for domains such as insurance, telecom, and wireless expense management. He has twice been recognized as a Most Valuable Professional by one of the leading social community websites, CSharpCorner, for his contributions toward writing articles and helping community members, mostly on Microsoft Azure. He is highly focused on learning about technology. He is an avid blogger who writes about his learning on his personal blog (praveenkumarsreeram/author/prawin2k/) and you can also follow him on Twitter at @PrawinSreeram. His current focus is on analyzing business problems and providing technical solutions for various projects related to Microsoft Azure and Sitecore.

Omkar Dusane is a software developer based in Mumbai, India. He has designed and developed many software products for startups. He is a food enthusiast and a Node.js lover and was a senior Microsoft Student Partner who represented India at Microsoft Global Student Partner Summit in 2016. He is currently Product Engineer at Kennect Solutions Pvt. Ltd. Mumbai and is responsible for business execution and intelligence tools for various industries. He encourages serverless technologies and has an eye for scalability of new web technologies.

Who this course is for:

  • Software Developers, Software architects, Technical Leads, Cloud administrator, architect, and those who would like to use Azure Functions to build scalable systems and deploy serverless applications.