SlideShare a Scribd company logo
1 of 48
> Learn new skills. Go deep in code-first, expert-led sessions on
all things Microsoft Cloud, including Visual Studio Live Share –
so you can edit and debug your projects collaboratively – and
find out more on how to build a secure, scalable infrastructure
for your applications on Azure.
> Explore new tech. Get the latest info in 100+ technical sessions
focused on the trends and technologies defining the software
industry. Explore new tech with dev-centered workshops,
immersive experiences, and networking opportunities.
> Connect with experts. Go one-on-one with the Microsoft
engineers and get answers to your toughest questions.
Collaborate with your peers too, join a user group or meetup to
share your top tips and tricks, and expand your network.
free event
for developers
100+ deep-dive
sessions and workshops
350+ experts
learn and network
community building
theatres, hangouts, meetups
Register for free at aka.ms/MSIgniteTourSyd
Learning Paths
You pick the path, we’ll guide you to the
sessions that meet your learning goals.
Building your
Applications for the
Cloud. Take advantage of
the scale the cloud offers.
Getting the Most of your
Data. Use AI and Machine
Learning to get new
insights from existing
data.
Migrating Applications
to the Cloud. Modernise
your applications and
migrate to the cloud.
01
02
03
Learn new ways to code, optimise your
cloud infrastructure, and modernise your
organisation with deep technical training.
Sydney | 13 & 14 February, 2019
Real Life Azure Functions
Architecture
Scott Holden
AppDev TSP @ Microsoft
Azure Serverless Ecosystem
Generally available
GitHub:
Azure/azure-functions-nodejs-worker
Public preview
GitHub:
Azure/azure-functions-java-worker
New!
Private preview
GitHub:
Azure/azure-functions-python-worker
Build Your Own!
https://github.com/Azure/azure-functions-host/wiki/Language-Extensibility
https://github.com/radu-matei/azure-functions-golang-worker
Functions 1.0 Functions 2.0
.NET Support .NET Framework 4.7.1 .NET Core 2.1
Assembly isolation No Yes
Bindings versions Runtime versions User controlled
Language options Limitations in languages and versions Languages are external to the host
Node.js version Node.js 6 only Node.js 8 & 10 + future versions
Node.js native modules Not supported Supported
HTTP triggers HTTP and specialized Webhooks HTTP (supports Webhooks)
Language Runtime Multiple languages per function app Single language per function app
Functions Proxies GA GA
OpenAPI definition Preview Not yet available
Observability Application Insights/WebJobs dashboard App Insights
Platform
Application delivery
Operating system
●●● ●●●
●●●
+
https://github.com/azure/azure-functions-host (+others)
Azure Functions
host runtime
Azure Functions
Core Tools
Azure Functions
base Docker image
Azure Functions
.NET Docker image
Azure Functions
Node Docker image
●●●
User
probe probe
Global Private
WAN
Connection
pooling
Active global traffic
routing
Azure Region 1 Azure Region 2
64 global edge POPs
Path based traffic load balancing
Static content caching
Application layer security
VisibilityTimeout: 30s
Orchestrator
Function
Activity
Function
Starter
Function
Activity
Function
Activity
Function
public static async Task<object> Run(DurableOrchestrationContext ctx)
{
try
{
var status = await ctx.CallActivityAsync(“Start");
while (!status.Completed)
{
status = await ctx.CallActivityAsync(“CheckStatus", status);
var nextCheck = ctx.CurrentUtcDateTime.AddHours(1);
await ctx.CreateTimer(nextCheck, CancellationToken.None);
}
return await ctx.CallActivityAsync(“Completed", status);
}
catch (Exception)
{
// global error handling/compensation goes here
}
}
Orchestrator Function
Activity Functions
Foo: mysecret
Foo: mysecret
Foo: mysecret
Foo: reference
Foo: mysecret
Questions?

More Related Content

What's hot

From GitHub Source to GitHub Release: Free CICD Pipelines For JavaFX Apps
From GitHub Source to GitHub Release: Free CICD Pipelines For JavaFX AppsFrom GitHub Source to GitHub Release: Free CICD Pipelines For JavaFX Apps
From GitHub Source to GitHub Release: Free CICD Pipelines For JavaFX AppsBruno Borges
 
Second Screen Apps with the Google Cast SDK
Second Screen Apps with the Google Cast SDKSecond Screen Apps with the Google Cast SDK
Second Screen Apps with the Google Cast SDKKevin Whinnery
 
DevOps and compliance and security
DevOps and compliance and securityDevOps and compliance and security
DevOps and compliance and securityKazushi Kamegawa
 
Advanced jenkins : Create plugin to auto scale worker agent
Advanced jenkins : Create plugin to auto scale worker agentAdvanced jenkins : Create plugin to auto scale worker agent
Advanced jenkins : Create plugin to auto scale worker agentDevOps Indonesia
 
All Around Azure: DevOps with GitHub - Managing the Flow of Work
All Around Azure: DevOps with GitHub - Managing the Flow of WorkAll Around Azure: DevOps with GitHub - Managing the Flow of Work
All Around Azure: DevOps with GitHub - Managing the Flow of WorkDavide Benvegnù
 
Eclipse Che - A Revolutionary IDE for Distributed & Mainframe Development
Eclipse Che - A Revolutionary IDE for Distributed & Mainframe DevelopmentEclipse Che - A Revolutionary IDE for Distributed & Mainframe Development
Eclipse Che - A Revolutionary IDE for Distributed & Mainframe DevelopmentDevOps.com
 
Cypress report
Cypress reportCypress report
Cypress reportAdarsh
 
Automated Release Pipelines with Azure DevOps
Automated Release Pipelines with Azure DevOpsAutomated Release Pipelines with Azure DevOps
Automated Release Pipelines with Azure DevOpsProjectCon
 
The Power of Azure DevOps
The Power of Azure DevOpsThe Power of Azure DevOps
The Power of Azure DevOpsJeff Bramwell
 
Guide To Jenkins Management Continuous Integration And Useful Plugins Complet...
Guide To Jenkins Management Continuous Integration And Useful Plugins Complet...Guide To Jenkins Management Continuous Integration And Useful Plugins Complet...
Guide To Jenkins Management Continuous Integration And Useful Plugins Complet...SlideTeam
 
Microsoft Skills Bootcamp - The power of GitHub and Azure
Microsoft Skills Bootcamp - The power of GitHub and AzureMicrosoft Skills Bootcamp - The power of GitHub and Azure
Microsoft Skills Bootcamp - The power of GitHub and AzureDavide Benvegnù
 
The Power of Azure DevOps - Global Azure Day 2020
The Power of Azure DevOps - Global Azure Day 2020The Power of Azure DevOps - Global Azure Day 2020
The Power of Azure DevOps - Global Azure Day 2020Jeff Bramwell
 
BDD with CucumberJS and WebdriverIO
BDD with CucumberJS and WebdriverIOBDD with CucumberJS and WebdriverIO
BDD with CucumberJS and WebdriverIOM Rizwanur Rashid
 
Ionic Advisory: Your partner at every stage of development
Ionic Advisory: Your partner at every stage of development Ionic Advisory: Your partner at every stage of development
Ionic Advisory: Your partner at every stage of development Ionic Framework
 
Infrastrucutre As Code
Infrastrucutre As Code Infrastrucutre As Code
Infrastrucutre As Code Venu Murthy
 

What's hot (19)

From GitHub Source to GitHub Release: Free CICD Pipelines For JavaFX Apps
From GitHub Source to GitHub Release: Free CICD Pipelines For JavaFX AppsFrom GitHub Source to GitHub Release: Free CICD Pipelines For JavaFX Apps
From GitHub Source to GitHub Release: Free CICD Pipelines For JavaFX Apps
 
Second Screen Apps with the Google Cast SDK
Second Screen Apps with the Google Cast SDKSecond Screen Apps with the Google Cast SDK
Second Screen Apps with the Google Cast SDK
 
Docker notes for newbies
Docker notes for newbiesDocker notes for newbies
Docker notes for newbies
 
DevOps and compliance and security
DevOps and compliance and securityDevOps and compliance and security
DevOps and compliance and security
 
Azure DevOps
Azure DevOpsAzure DevOps
Azure DevOps
 
Azure devops
Azure devopsAzure devops
Azure devops
 
Advanced jenkins : Create plugin to auto scale worker agent
Advanced jenkins : Create plugin to auto scale worker agentAdvanced jenkins : Create plugin to auto scale worker agent
Advanced jenkins : Create plugin to auto scale worker agent
 
All Around Azure: DevOps with GitHub - Managing the Flow of Work
All Around Azure: DevOps with GitHub - Managing the Flow of WorkAll Around Azure: DevOps with GitHub - Managing the Flow of Work
All Around Azure: DevOps with GitHub - Managing the Flow of Work
 
Eclipse Che - A Revolutionary IDE for Distributed & Mainframe Development
Eclipse Che - A Revolutionary IDE for Distributed & Mainframe DevelopmentEclipse Che - A Revolutionary IDE for Distributed & Mainframe Development
Eclipse Che - A Revolutionary IDE for Distributed & Mainframe Development
 
Cypress report
Cypress reportCypress report
Cypress report
 
Automated Release Pipelines with Azure DevOps
Automated Release Pipelines with Azure DevOpsAutomated Release Pipelines with Azure DevOps
Automated Release Pipelines with Azure DevOps
 
The Power of Azure DevOps
The Power of Azure DevOpsThe Power of Azure DevOps
The Power of Azure DevOps
 
Guide To Jenkins Management Continuous Integration And Useful Plugins Complet...
Guide To Jenkins Management Continuous Integration And Useful Plugins Complet...Guide To Jenkins Management Continuous Integration And Useful Plugins Complet...
Guide To Jenkins Management Continuous Integration And Useful Plugins Complet...
 
Microsoft Skills Bootcamp - The power of GitHub and Azure
Microsoft Skills Bootcamp - The power of GitHub and AzureMicrosoft Skills Bootcamp - The power of GitHub and Azure
Microsoft Skills Bootcamp - The power of GitHub and Azure
 
The Power of Azure DevOps - Global Azure Day 2020
The Power of Azure DevOps - Global Azure Day 2020The Power of Azure DevOps - Global Azure Day 2020
The Power of Azure DevOps - Global Azure Day 2020
 
Intro to Azure DevOps
Intro to Azure DevOpsIntro to Azure DevOps
Intro to Azure DevOps
 
BDD with CucumberJS and WebdriverIO
BDD with CucumberJS and WebdriverIOBDD with CucumberJS and WebdriverIO
BDD with CucumberJS and WebdriverIO
 
Ionic Advisory: Your partner at every stage of development
Ionic Advisory: Your partner at every stage of development Ionic Advisory: Your partner at every stage of development
Ionic Advisory: Your partner at every stage of development
 
Infrastrucutre As Code
Infrastrucutre As Code Infrastrucutre As Code
Infrastrucutre As Code
 

Similar to Real Life Azure Functions Architecture

[AI] ML Operationalization with Microsoft Azure
[AI] ML Operationalization with Microsoft Azure[AI] ML Operationalization with Microsoft Azure
[AI] ML Operationalization with Microsoft AzureKorkrid Akepanidtaworn
 
Azure DevOps työkalut - Roundtable 14.3.2019
Azure DevOps työkalut - Roundtable 14.3.2019Azure DevOps työkalut - Roundtable 14.3.2019
Azure DevOps työkalut - Roundtable 14.3.2019Janne Mattila
 
Azure Data Studio Extension Development
Azure Data Studio Extension DevelopmentAzure Data Studio Extension Development
Azure Data Studio Extension DevelopmentDrew Skwiers-Koballa
 
Continues Integration and Continuous Delivery with Azure DevOps - Deploy Anyt...
Continues Integration and Continuous Delivery with Azure DevOps - Deploy Anyt...Continues Integration and Continuous Delivery with Azure DevOps - Deploy Anyt...
Continues Integration and Continuous Delivery with Azure DevOps - Deploy Anyt...Janusz Nowak
 
Deep Dive Azure Functions - Global Azure Bootcamp 2019
Deep Dive Azure Functions - Global Azure Bootcamp 2019Deep Dive Azure Functions - Global Azure Bootcamp 2019
Deep Dive Azure Functions - Global Azure Bootcamp 2019Andrea Tosato
 
Rilasci senza paura (o panico) con Azure DevOps
Rilasci senza paura (o panico) con Azure DevOpsRilasci senza paura (o panico) con Azure DevOps
Rilasci senza paura (o panico) con Azure DevOpsCommit University
 
Whats New in Visual Studio 2019
Whats New in Visual Studio 2019Whats New in Visual Studio 2019
Whats New in Visual Studio 2019Luis Beltran
 
Azure DevOps Best Practices Webinar
Azure DevOps Best Practices WebinarAzure DevOps Best Practices Webinar
Azure DevOps Best Practices WebinarCambay Digital
 
Modern Development with Microsoft
Modern Development with MicrosoftModern Development with Microsoft
Modern Development with MicrosoftJoshua Drew
 
A selection of short stories where Azure DevOps saved the bacon
A selection of short stories where Azure DevOps saved the baconA selection of short stories where Azure DevOps saved the bacon
A selection of short stories where Azure DevOps saved the baconMatteo Emili
 
Csharp corner toronto vs2019 post launch 10 apr 2019 nilesh shah
Csharp corner toronto vs2019 post launch 10 apr 2019 nilesh shahCsharp corner toronto vs2019 post launch 10 apr 2019 nilesh shah
Csharp corner toronto vs2019 post launch 10 apr 2019 nilesh shahNilesh Shah
 
Vijay Oscon
Vijay OsconVijay Oscon
Vijay Osconvijayrvr
 
Best software development tools in 2021
Best software development tools in 2021Best software development tools in 2021
Best software development tools in 2021Samaritan InfoTech
 
Dockercon 2019 Developing Apps with Containers, Functions and Cloud Services
Dockercon 2019 Developing Apps with Containers, Functions and Cloud ServicesDockercon 2019 Developing Apps with Containers, Functions and Cloud Services
Dockercon 2019 Developing Apps with Containers, Functions and Cloud ServicesPatrick Chanezon
 
DCSF 19 Developing Apps with Containers, Functions and Cloud Services
DCSF 19 Developing Apps with Containers, Functions and Cloud ServicesDCSF 19 Developing Apps with Containers, Functions and Cloud Services
DCSF 19 Developing Apps with Containers, Functions and Cloud ServicesDocker, Inc.
 
Accelerate Your Automation Testing Effort using TestProject & Docker | Docker...
Accelerate Your Automation Testing Effort using TestProject & Docker | Docker...Accelerate Your Automation Testing Effort using TestProject & Docker | Docker...
Accelerate Your Automation Testing Effort using TestProject & Docker | Docker...Ajeet Singh Raina
 

Similar to Real Life Azure Functions Architecture (20)

GitHub for partners
GitHub for partnersGitHub for partners
GitHub for partners
 
Visual studio 2019 launch
Visual studio 2019 launch Visual studio 2019 launch
Visual studio 2019 launch
 
[AI] ML Operationalization with Microsoft Azure
[AI] ML Operationalization with Microsoft Azure[AI] ML Operationalization with Microsoft Azure
[AI] ML Operationalization with Microsoft Azure
 
Azure DevOps työkalut - Roundtable 14.3.2019
Azure DevOps työkalut - Roundtable 14.3.2019Azure DevOps työkalut - Roundtable 14.3.2019
Azure DevOps työkalut - Roundtable 14.3.2019
 
Azure Data Studio Extension Development
Azure Data Studio Extension DevelopmentAzure Data Studio Extension Development
Azure Data Studio Extension Development
 
Continues Integration and Continuous Delivery with Azure DevOps - Deploy Anyt...
Continues Integration and Continuous Delivery with Azure DevOps - Deploy Anyt...Continues Integration and Continuous Delivery with Azure DevOps - Deploy Anyt...
Continues Integration and Continuous Delivery with Azure DevOps - Deploy Anyt...
 
Deep Dive Azure Functions - Global Azure Bootcamp 2019
Deep Dive Azure Functions - Global Azure Bootcamp 2019Deep Dive Azure Functions - Global Azure Bootcamp 2019
Deep Dive Azure Functions - Global Azure Bootcamp 2019
 
Rilasci senza paura (o panico) con Azure DevOps
Rilasci senza paura (o panico) con Azure DevOpsRilasci senza paura (o panico) con Azure DevOps
Rilasci senza paura (o panico) con Azure DevOps
 
Whats New in Visual Studio 2019
Whats New in Visual Studio 2019Whats New in Visual Studio 2019
Whats New in Visual Studio 2019
 
Azure DevOps Best Practices Webinar
Azure DevOps Best Practices WebinarAzure DevOps Best Practices Webinar
Azure DevOps Best Practices Webinar
 
Tour of Azure DevOps
Tour of Azure DevOpsTour of Azure DevOps
Tour of Azure DevOps
 
Modern Development with Microsoft
Modern Development with MicrosoftModern Development with Microsoft
Modern Development with Microsoft
 
A selection of short stories where Azure DevOps saved the bacon
A selection of short stories where Azure DevOps saved the baconA selection of short stories where Azure DevOps saved the bacon
A selection of short stories where Azure DevOps saved the bacon
 
Csharp corner toronto vs2019 post launch 10 apr 2019 nilesh shah
Csharp corner toronto vs2019 post launch 10 apr 2019 nilesh shahCsharp corner toronto vs2019 post launch 10 apr 2019 nilesh shah
Csharp corner toronto vs2019 post launch 10 apr 2019 nilesh shah
 
Vijay Oscon
Vijay OsconVijay Oscon
Vijay Oscon
 
Best software development tools in 2021
Best software development tools in 2021Best software development tools in 2021
Best software development tools in 2021
 
Flutter
FlutterFlutter
Flutter
 
Dockercon 2019 Developing Apps with Containers, Functions and Cloud Services
Dockercon 2019 Developing Apps with Containers, Functions and Cloud ServicesDockercon 2019 Developing Apps with Containers, Functions and Cloud Services
Dockercon 2019 Developing Apps with Containers, Functions and Cloud Services
 
DCSF 19 Developing Apps with Containers, Functions and Cloud Services
DCSF 19 Developing Apps with Containers, Functions and Cloud ServicesDCSF 19 Developing Apps with Containers, Functions and Cloud Services
DCSF 19 Developing Apps with Containers, Functions and Cloud Services
 
Accelerate Your Automation Testing Effort using TestProject & Docker | Docker...
Accelerate Your Automation Testing Effort using TestProject & Docker | Docker...Accelerate Your Automation Testing Effort using TestProject & Docker | Docker...
Accelerate Your Automation Testing Effort using TestProject & Docker | Docker...
 

Recently uploaded

SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commercemanigoyal112
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...Technogeeks
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...confluent
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样umasea
 
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanyChristoph Pohl
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odishasmiwainfosol
 
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in NoidaBuds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in Noidabntitsolutionsrishis
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesPhilip Schwarz
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Cizo Technology Services
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Angel Borroy López
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfFerryKemperman
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaHanief Utama
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprisepreethippts
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...OnePlan Solutions
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...OnePlan Solutions
 

Recently uploaded (20)

SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commerce
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...
 
Advantages of Odoo ERP 17 for Your Business
Advantages of Odoo ERP 17 for Your BusinessAdvantages of Odoo ERP 17 for Your Business
Advantages of Odoo ERP 17 for Your Business
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
 
2.pdf Ejercicios de programación competitiva
2.pdf Ejercicios de programación competitiva2.pdf Ejercicios de programación competitiva
2.pdf Ejercicios de programación competitiva
 
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
 
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in NoidaBuds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a series
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdf
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief Utama
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprise
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
 

Real Life Azure Functions Architecture

  • 1.
  • 2. > Learn new skills. Go deep in code-first, expert-led sessions on all things Microsoft Cloud, including Visual Studio Live Share – so you can edit and debug your projects collaboratively – and find out more on how to build a secure, scalable infrastructure for your applications on Azure. > Explore new tech. Get the latest info in 100+ technical sessions focused on the trends and technologies defining the software industry. Explore new tech with dev-centered workshops, immersive experiences, and networking opportunities. > Connect with experts. Go one-on-one with the Microsoft engineers and get answers to your toughest questions. Collaborate with your peers too, join a user group or meetup to share your top tips and tricks, and expand your network. free event for developers 100+ deep-dive sessions and workshops 350+ experts learn and network community building theatres, hangouts, meetups Register for free at aka.ms/MSIgniteTourSyd Learning Paths You pick the path, we’ll guide you to the sessions that meet your learning goals. Building your Applications for the Cloud. Take advantage of the scale the cloud offers. Getting the Most of your Data. Use AI and Machine Learning to get new insights from existing data. Migrating Applications to the Cloud. Modernise your applications and migrate to the cloud. 01 02 03 Learn new ways to code, optimise your cloud infrastructure, and modernise your organisation with deep technical training. Sydney | 13 & 14 February, 2019
  • 3. Real Life Azure Functions Architecture Scott Holden AppDev TSP @ Microsoft
  • 4.
  • 6. Generally available GitHub: Azure/azure-functions-nodejs-worker Public preview GitHub: Azure/azure-functions-java-worker New! Private preview GitHub: Azure/azure-functions-python-worker Build Your Own! https://github.com/Azure/azure-functions-host/wiki/Language-Extensibility https://github.com/radu-matei/azure-functions-golang-worker
  • 7. Functions 1.0 Functions 2.0 .NET Support .NET Framework 4.7.1 .NET Core 2.1 Assembly isolation No Yes Bindings versions Runtime versions User controlled Language options Limitations in languages and versions Languages are external to the host Node.js version Node.js 6 only Node.js 8 & 10 + future versions Node.js native modules Not supported Supported HTTP triggers HTTP and specialized Webhooks HTTP (supports Webhooks) Language Runtime Multiple languages per function app Single language per function app Functions Proxies GA GA OpenAPI definition Preview Not yet available Observability Application Insights/WebJobs dashboard App Insights
  • 8. Platform Application delivery Operating system ●●● ●●● ●●● + https://github.com/azure/azure-functions-host (+others) Azure Functions host runtime Azure Functions Core Tools Azure Functions base Docker image Azure Functions .NET Docker image Azure Functions Node Docker image ●●●
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23. User probe probe Global Private WAN Connection pooling Active global traffic routing Azure Region 1 Azure Region 2 64 global edge POPs Path based traffic load balancing Static content caching Application layer security
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 39.
  • 40.
  • 42. public static async Task<object> Run(DurableOrchestrationContext ctx) { try { var status = await ctx.CallActivityAsync(“Start"); while (!status.Completed) { status = await ctx.CallActivityAsync(“CheckStatus", status); var nextCheck = ctx.CurrentUtcDateTime.AddHours(1); await ctx.CreateTimer(nextCheck, CancellationToken.None); } return await ctx.CallActivityAsync(“Completed", status); } catch (Exception) { // global error handling/compensation goes here } } Orchestrator Function Activity Functions
  • 43.
  • 44.
  • 45.
  • 46. Foo: mysecret Foo: mysecret Foo: mysecret Foo: reference Foo: mysecret
  • 47.

Editor's Notes

  1. 34
  2. 40
  3. 42