Azure Functions & .NET 5

Azure Functions & .NET 5
Ankit Kumar
Software Engineer – Azure Functions
 
ankitkumarr
Serverless with Azure Functions
Introduction
 
Serverless
 
Full abstraction of servers
 
Instant scale
 
Pay-per-use
Azure Functions
A Simple Function
 
When a Queue message M arrives,
Fetch a blob named M
Copy it to a new blob
A Simple Function
When a Queue message M arrives,
Fetch a blob named M
Copy it to a new blob
A Simple Function
When a Queue message M arrives,
Fetch a blob named M
Copy it to a new blob
A Simple Function
When a Queue message M arrives,
Fetch a blob named M
Copy it to a new blob
A Simple Function
When a Queue message M arrives,
Fetch a blob named M
Copy it to a new blob
A Simple Function
When a Queue message M arrives,
Fetch a blob named M
Copy it to a new blob
Azure Functions Execution Model
Internals
 
Functions Components
 
Azure Functions Host
The engine that dispatches and orchestrates executions
 
  Azure/azure-functions-host
Extensions
Binding and trigger libraries
Example-       Azure/azure-functions-eventhubs-extension
Language Workers
Language extensibility (out of proc)
Example-       Azure/azure-functions-nodejs-worker
 
Functions Host versioning
.NET Framework
V1
.NET Core 2.2 (Deprecated)
V2
.NET Core 3.1
V3
 
Functions Host Process (.NET Core 3)
 
Storage Event
Function Invoker
 
public static
 
Run(…,
 CloudBlockB
lob blob,
…)
)
{
   
// Function
}
Extensions (Bindings)
 
Script Host
.NET Core 3 Function Execution (In Proc)
.NET Core Functions
 
In-proc (Host is written in .NET Core)
.NET Core version support tied to Host
 
 
V3 Host (.NET Core 3) does not run .NET 5 functions in-proc
 
Other languages in Functions
 
Support for 
   
etc
Out of proc model
Metadata files* (function.json)
 
Functions Host Process (.NET Core 3)
 
Storage Event
Function Invoker
Extensions (Bindings)
 
Script Host
IPC Server
 
Language Process (Node)
 
Node Worker
User Code
 
module.exports = 
function
(context) {
   
c
ontext.log(context.bindings.myBlob);
   
// ...
}
 
IPC (gRPC)
Node Function Execution (Out of Proc)
.NET 5 on Azure Functions
Internals
.NET 5
 
Not an LTS version
End of Support 3 months after .NET 6
All odd .NET versions (5,7,…) will be short-lived
Functions Host not moving to .NET 5 (managed service)
 
Azure Functions .NET worker
 
Out of proc model
Shipped as a nuget package
Trying to keep the same-ish interface (no function.json)
Build Tools create metadata
 
Functions Host Process (.NET Core 3)
 
Storage Event
Function Invoker
Extensions (Bindings)
 
Script Host
IPC Server
 
Language Process (.NET 5)
 
User Code
.NET Worker
 
IPC (gRPC)
.NET 5 Function Execution (Out of Proc)
Demo
.NET 5 on Azure Functions
Analysis
Key differences
 
No rich type bindings* (plans to add)
Serialization / Deserialization of triggers
Different parameter types
Performance differences
Language worker process
 
New features
 
Better Isolation
Decoupled from Host framework dependencies
Middleware Support
Similar model as ASP.NET
Independent updates
Worker deployed with function code
What’s next
 
Support for Linux and tools (VS)
Performance improvements
Better Binding support
GA soon (yay!)
.NET 6 support
.NET 5 on Azure Functions
Azure/azure-functions-dotnet-worker-preview
Slide Note
Embed
Share

Dive into the world of Azure Functions and .NET 5 with a focus on serverless computing, full abstraction of servers, and seamless scalability. Explore how to react to events using various languages like C#, F#, Node.JS, Java, Python, and PowerShell. Discover the power of stateful orchestrations with Durable Functions and streamline your workflow with simple functions for processing queue messages and blob operations.

  • Azure Functions
  • .NET 5
  • Serverless Computing
  • Scalability
  • Durable Functions

Uploaded on Feb 28, 2025 | 0 Views


Download Presentation

Please find below an Image/Link to download the presentation.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author. Download presentation by click this link. If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.

E N D

Presentation Transcript


  1. Azure Functions & .NET 5 Ankit Kumar Software Engineer Azure Functions ankitkumarr

  2. Serverless with Azure Functions Introduction

  3. Full abstraction of servers Serverless Instant scale Pay-per-use

  4. Azure Functions Outputs Events Code React to timers, HTTP, or events from your favorite Azure services, with more on the way Send results to an ever- growing collection of services Author functions in C#, F#, Node.JS, Java, Python, PowerShell, and more Stateful orchestrations w/ Durable Functions

  5. A Simple Function When a Queue message M arrives, Fetch a blob named M Copy it to a new blob

  6. A Simple Function When a Queue message M arrives, Fetch a blob named M Copy it to a new blob

  7. A Simple Function When a Queue message M arrives, Fetch a blob named M Copy it to a new blob

  8. A Simple Function When a Queue message M arrives, Fetch a blob named M Copy it to a new blob

  9. A Simple Function When a Queue message M arrives, Fetch a blob named M Copy it to a new blob

  10. A Simple Function When a Queue message M arrives, Fetch a blob named M Copy it to a new blob

  11. Azure Functions Execution Model Internals

  12. Functions Components Azure Functions Host The engine that dispatches and orchestrates executions Azure/azure-functions-host Extensions Binding and trigger libraries Example- Azure/azure-functions-eventhubs-extension Language Workers Language extensibility (out of proc) Example- Azure/azure-functions-nodejs-worker

  13. Functions Host versioning V1 .NET Framework V2 .NET Core 2.2 (Deprecated) V3 .NET Core 3.1

  14. .NET Core 3 Function Execution (In Proc) Functions Host Process (.NET Core 3) Storage Event Script Host Extensions (Bindings) Function Invoker public static Run( , CloudBlockBlob blob, )) { // Function }

  15. .NET Core Functions In-proc (Host is written in .NET Core) .NET Core version support tied to Host V3 Host (.NET Core 3) does not run .NET 5 functions in-proc

  16. Other languages in Functions Support for Out of proc model Metadata files* (function.json) etc

  17. Node Function Execution (Out of Proc) Functions Host Process (.NET Core 3) Storage Event Language Process (Node) Script Host Node Worker Extensions (Bindings) User Code IPC (gRPC) Function Invoker IPC Server module.exports = function(context) { context.log(context.bindings.myBlob); // ... }

  18. .NET 5 on Azure Functions Internals

  19. .NET 5 Not an LTS version End of Support 3 months after .NET 6 All odd .NET versions (5,7, ) will be short-lived Functions Host not moving to .NET 5 (managed service)

  20. Azure Functions .NET worker Out of proc model Shipped as a nuget package Trying to keep the same-ish interface (no function.json) Build Tools create metadata

  21. .NET 5 Function Execution (Out of Proc) Functions Host Process (.NET Core 3) Storage Event Language Process (.NET 5) Script Host User Code Extensions (Bindings) .NET Worker IPC (gRPC) Function Invoker IPC Server

  22. Demo

  23. .NET 5 on Azure Functions Analysis

  24. Key differences No rich type bindings* (plans to add) Serialization / Deserialization of triggers Different parameter types Performance differences Language worker process

  25. New features Better Isolation Decoupled from Host framework dependencies Middleware Support Similar model as ASP.NET Independent updates Worker deployed with function code

  26. Whats next Support for Linux and tools (VS) Performance improvements Better Binding support GA soon (yay!) .NET 6 support

  27. .NET 5 on Azure Functions Azure/azure-functions-dotnet-worker-preview

Related


More Related Content

giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#