Azure Functions

with .NET

Ryan Niño Dizon

Software Development Lead / Architect

@ ISD Feniqs

github.com/ryannninodizon
youtube.com/@LearnWithJon
facebook.com/learnwithjonjon
medium.com/@ryanninodizon

Follow me

Agenda

  • Azure Functions Overview

  • New features of Functions for .NET developers

  • Exploring sample projects.

Evolution of Compute

Physical Server

Virtual Machines

2.

PaaS

3.

Containerization

4.

Serverless

5.

1.

What is Serverless

No infrastructure management
 

Using fully managed services enables developers to avoid administrative tasks and focus on core business logic. With a serverless platform, you simply deploy your code, and it runs with high availability.

Dynamic scalability



With serverless computing, the infrastructure dynamically scales up and down within seconds to match the demands of any workload.

Faster time to market


Serverless applications reduce the operations dependencies on each development cycle, increasing development teams’ agility to deliver more functionality in less time.

More efficient use of resources

 

Shifting to serverless technologies helps organizations reduce Total Cost of Ownership (TCO) and reallocate resources to accelerate the pace of innovation.

FaaS is at the center of serverless

Single Responsibility
 

 

Functions are simple, reusable bits of code that do a specific job, take an input and give back a result.

Short-Lived


 

Functions don't stay after they finish doing their job, making resources available for more tasks.

Stateless

 

Functions don't remember things or depend on what other tasks are doing.

Event-driven and scalable

 

Functions react to set events and quickly make copies as many times as necessary.

Azure Functions

Events

Code

Output

Cost-Efficiency

Serverless Computing vs. Traditional Computing

backend/service/api

{Id:123,Name:"Ryan",LastName:"Dizon"}

 

backend/service/api

{Id:123,Name:"Ryan",LastName:"Dizon"}

 

(Runtime: 100ms)

(Uptime: 72h)

Common functions scenarios

Machine Learning

Web/Mobile Apps Backends

Stream Processing

IoT Connected Backends

Workflows and Orchestrations

Scheduled Task Automations

Visual Studio for Functions development

Project demo

Hosting options

Consumption Plan
 

 

Event-driven scaling(to zero)

Only pay for what you use

Premium Plan


 

Event-driven scaling

 

Pre-warmed instances

 

Additional networking options

App Service Plan

 

CPU/memory scaling

 

Always on

 

Additional networking options

App Service Environment

 

CPU/memory scaling

 

Always on

 

Most robust netwrorking options and isolation

Workflow and orchestration with Durable Functions

Manageable sequencing

External events correlation

Process Monitoring

Fanning out and fanning in

Http-based async long-running APIs

Human Interaction

Function Chaining/sequencing

Fan out/fan in

Evolution of .NET on Functions

  1. Bind to new types from the latest Azure SDKs
  2. You own main() and all dependencies
  3. Improved reliability
  4. Modernized .NET model
  5. Rich dependency injection
  6. Invocation middleware
  7. Better extensibility
  8. Performance gains
  9. OpenTelemetry support
  10. Deeper ASP.NET integration
  11. more to come

.NET Upgrade Assistant

https://dotnet.microsoft.com/en-us/platform/upgrade-assistant

Azure Function is open-source

https://github.com/Azure/Azure-Functions

Azure Function is open-source

  • functions.azure.com
  • learn.microsoft.com/azure/azure-functions
  • azure.com/free

Thank you 

github.com/ryannninodizon
youtube.com/@LearnWithJon
facebook.com/learnwithjonjon
medium.com/@ryanninodizon

Azure Functions with .NET

By Ryan Niño Dizon

Azure Functions with .NET

  • 7