Azure serverless computing

Udaiappa Ramachandran
Udaiappa RamachandranCTO, Akumina, Inc., em Akumina
Azure Serverless Computing
Udaiappa Ramachandran ( Udai )
https://udai.io
Who am I?
• Udaiappa Ramachandran ( Udai )
• CTO, Akumina, Inc.,
• Focus on Cloud Computing
• Microsoft Azure, Amazon Web Services and Google
• New Hampshire Cloud User Group (http://www.meetup.com/nashuaug )
• https://udai.io
Agenda
• Serverless computing
• Azure Functions
• Dependency Injection
• Dynamic Site Hosting
• Azure Durable Functions/2.0
• Key Vault in Azure Functions
• Scripting Azure Functions
• Demo
• References
• Q & A
The evaluation of application platforms
• On-premises
• IaaS
• PaaS
• Serverless
Serverless
• What is serverless?
• Built on Micro services
• Abstraction of servers
• Event-driven
• Micro-billing (Pay-for-what-you-use)
• Benefits
• Automatically Scale
• Focus on business logic
• Faster time to market
• Ops Cost Reduction
Serverless-Cold start
https://blogs.msdn.microsoft.com/appserviceteam/2018/02/07/understanding-serverless-cold-start/
Serverless components
• Functions (serverless component)
• Logic Apps (serverless workflow)
• Flow (built on top of logic apps)
• Event Grids (serverless events)
Azure Functions (Code+EventData)
• Choice of language
• Pay-per-use pricing model
• Bring your own dependencies
• Integrated security
• Simplified integration
• Flexible development
• Open-source
• Flexible AppService Plan
• Consumption
• Premium
• Dedicated (App Service)
Supported Languages
Language 1.x 2.x 3.x1
C# GA (.NET Framework 4.7) GA (.NET Core 2.2) Preview (.NET Core 3.x)
JavaScript GA (Node 6) GA (Node 8 & 10) Preview (Node 8 & 10)
F# GA (.NET Framework 4.7) GA (.NET Core 2.2) Preview (.NET Core 3.x)
Java N/A GA (Java 8) Preview (Java 8)
PowerShell Experimental Preview (PowerShell Core 6) Preview (PowerShell Core 6)
Python Experimental GA (Python 3.6.x) Preview (Python 3.6.x)
TypeScript Experimental GA2 Preview2
Bash Experimental N/A N/A
Batch (.cmd, .bat) Experimental N/A N/A
PHP Experimental N/A N/A
1The Functions v3.x runtime is in preview.
2Supported through transpiling to JavaScript.
Triggers and Bindings
1 In the version 2.x runtime, all bindings except
HTTP and Timer must be registered.
See Register binding extensions. All supported
2.x bindings are also supported in the version
3.x, unless otherwise noted.
Type 1.x 2.x1 Trigger Input Output
Blob storage ✔ ✔ ✔ ✔ ✔
Cosmos DB ✔ ✔ ✔ ✔ ✔
Event Grid ✔ ✔ ✔
Event Hubs ✔ ✔ ✔ ✔
HTTP & webhooks ✔ ✔ ✔ ✔
IoT Hub ✔ ✔ ✔ ✔
Microsoft Graph
Excel tables
✔ ✔ ✔
Microsoft Graph
OneDrive files
✔ ✔ ✔
Microsoft Graph
Outlook email
✔ ✔
Microsoft Graph
events
✔ ✔ ✔ ✔
Microsoft Graph
Auth tokens
✔ ✔
Mobile Apps ✔ ✔ ✔
Notification Hubs ✔ ✔
Queue storage ✔ ✔ ✔ ✔
SendGrid ✔ ✔ ✔
Service Bus ✔ ✔ ✔ ✔
SignalR ✔ ✔ ✔
Table storage ✔ ✔ ✔ ✔
Timer ✔ ✔ ✔
Twilio ✔ ✔ ✔
Common Scenarios
• Background Processing
• Timer-based processing
• Azure service event processing
• SaaS event processing
• Serverless web application architectures
• Serverless mobile backends
• Real-time stream processing
• Real-time bot messaging
IoC-Dependency Injection
• IoC (Inversion of Control)
• Service Location
• Events
• Delegates
• DI
• DI (Dependency Injection)
• Constructor
• Setter/Getter
• Interface/Methods
• DI Pros & Cons
• DI Frameworks
• .NET: Unity, Structure Map, Autofac, Ninject, and Managed Extensibility Framework (MEF)
• JAVA: Weld, Spring, Guice, Play framework, Salta, Glassfish HK2, Dagger
Dependency Injection in ASP.NET Core
• IServiceProvider
• Service Lifetimes
• Transient
• Scoped
• Singleton
• Add, TryAdd, and TryAddEnumerable
DI in .NET Azure Functions
• Pre-Requisites
• Microsoft.Azure.Functions.Extensions
• Caveats
• The startup class is meant for only setup and registration
• The dependency injection container only holds explicitly registered types
• Service Lifetimes
• Transient
• Scoped
• Singleton
Serverless Web Architecture
https://www.youtube.com/playlist?list=PLReL099Y5nRd04p81Q7p5TtyjCrj9tz1t
Azure Durable Functions
• Extension of Functions and Web Jobs
• Stateful workflows in orchestrator function Client, Orchestrator and Activity
• DurableOrchestrationContext , DurableOrchestrationClient
• bindings - OrchestrationTrigger, ActivityTrigger
• External Events and External Orchestration
• Versioning
Azure Durable Functions - Patterns
Function Chaining
Fan-out/fan-in
Async HTTP APIs Monitoring
Human interaction
https://docs.microsoft.com/en-us/azure/azure-functions/durable-functions-overview
Aggregator
Azure Durable Functions 2.0
• Durable Entities for stateful entities (actor-like)
• Durable HTTP for resilient HTTP request within an orchestration
• Pluggable state providers
• Roslyn Analyzer
• Interface and testability improvements
Circuit Breaker Pattern
https://www.youtube.com/playlist?list=PLReL099Y5nRd04p81Q7p5TtyjCrj9tz1t
Azure Functions - Proxies
• Proxies are created as a new endpoint on function app
• Proxy to another resource
• Enables microservices on existing large implementation
• Dev/Test scenario: Ability to modify request/response
Key Vault in Azure Functions
• Key Vault Integration of config using @Microsoft.KeyVault(<SECRET URI>)
• Using assigned managed identities
• Access from code using App Principal and SDK
Testing Functions
• Command-line tools
• 3rd party products such as Postman and Swagger
• Direct web calls via cURL
• Web browser
• Postman
• Microsoft Azure Storage Explorer
• Nested functions
• Timer trigger
• Queue trigger
• Visual Studio Cloud Explorer
Serverless from Amazon and Google
• Amazon
• Lambda
• Google
• Google Cloud Functions
Reference
• https://docs.microsoft.com/en-us/azure/azure-functions/
• https://github.com/azure/azure-functions/
• https://functions.azure.com/try
• https://github.com/Azure/azure-functions-durable-extension
• https://docs.microsoft.com/en-us/aspnet/core/blazor/get-
started?view=aspnetcore-3.0&tabs=visual-studio
• https://blazor.net
• https://azure.com/functions
• http://aka.ms/durable/2docs
• http://aka.ms/durable/entitysamples
• http://aka.ms/durable/circuitsample
1 de 24

Recomendados

Serverless Application Development with Azure por
Serverless Application Development with AzureServerless Application Development with Azure
Serverless Application Development with AzureCallon Campbell
450 visualizações73 slides
Serverless Computing in Azure por
Serverless Computing in AzureServerless Computing in Azure
Serverless Computing in AzureDaniel Toomey
2.2K visualizações70 slides
AWS IoT Greengrass V2 の紹介 por
AWS IoT Greengrass V2 の紹介AWS IoT Greengrass V2 の紹介
AWS IoT Greengrass V2 の紹介Amazon Web Services Japan
1.3K visualizações18 slides
AWS Summit Seoul 2023 | 생성 AI 모델의 임베딩 벡터를 이용한 서버리스 추천 검색 구현하기 por
AWS Summit Seoul 2023 | 생성 AI 모델의 임베딩 벡터를 이용한 서버리스 추천 검색 구현하기AWS Summit Seoul 2023 | 생성 AI 모델의 임베딩 벡터를 이용한 서버리스 추천 검색 구현하기
AWS Summit Seoul 2023 | 생성 AI 모델의 임베딩 벡터를 이용한 서버리스 추천 검색 구현하기Amazon Web Services Korea
451 visualizações56 slides
AWS re:Invent 특집(3) – Amazon 인공 지능(AI) 서비스 및 AWS 딥러닝 프레임웍 활용 (윤석찬) por
AWS re:Invent 특집(3) – Amazon 인공 지능(AI) 서비스 및 AWS 딥러닝 프레임웍 활용 (윤석찬)AWS re:Invent 특집(3) – Amazon 인공 지능(AI) 서비스 및 AWS 딥러닝 프레임웍 활용 (윤석찬)
AWS re:Invent 특집(3) – Amazon 인공 지능(AI) 서비스 및 AWS 딥러닝 프레임웍 활용 (윤석찬)Amazon Web Services Korea
9.7K visualizações47 slides
AWS Black Belt Online Seminar 2017 AWS体験ハンズオン~Deploy with EB CLI編~ por
AWS Black Belt Online Seminar 2017 AWS体験ハンズオン~Deploy with EB CLI編~AWS Black Belt Online Seminar 2017 AWS体験ハンズオン~Deploy with EB CLI編~
AWS Black Belt Online Seminar 2017 AWS体験ハンズオン~Deploy with EB CLI編~Amazon Web Services Japan
13.8K visualizações87 slides

Mais conteúdo relacionado

Mais procurados

20190821 AWS Black Belt Online Seminar AWS AppSync por
20190821 AWS Black Belt Online Seminar AWS AppSync20190821 AWS Black Belt Online Seminar AWS AppSync
20190821 AWS Black Belt Online Seminar AWS AppSyncAmazon Web Services Japan
33.9K visualizações80 slides
AWS Black Belt Techシリーズ AWS Directory Service por
AWS Black Belt Techシリーズ AWS Directory ServiceAWS Black Belt Techシリーズ AWS Directory Service
AWS Black Belt Techシリーズ AWS Directory ServiceAmazon Web Services Japan
12.1K visualizações55 slides
Lambda + SQS アクセス負荷を下げた話 por
Lambda + SQS アクセス負荷を下げた話Lambda + SQS アクセス負荷を下げた話
Lambda + SQS アクセス負荷を下げた話AiKitago
1.9K visualizações24 slides
Azure logic app por
Azure logic appAzure logic app
Azure logic appThi Nguyen Dinh
197 visualizações13 slides
20180509 AWS Black Belt Online Seminar Amazon GuardDuty por
20180509 AWS Black Belt Online Seminar Amazon GuardDuty20180509 AWS Black Belt Online Seminar Amazon GuardDuty
20180509 AWS Black Belt Online Seminar Amazon GuardDutyAmazon Web Services Japan
22.1K visualizações52 slides
Amazon.com 의 개인화 추천 / 예측 기능을 우리도 써 봅시다. :: 심호진 - AWS Community Day 2019 por
Amazon.com 의 개인화 추천 / 예측 기능을 우리도 써 봅시다. :: 심호진 - AWS Community Day 2019Amazon.com 의 개인화 추천 / 예측 기능을 우리도 써 봅시다. :: 심호진 - AWS Community Day 2019
Amazon.com 의 개인화 추천 / 예측 기능을 우리도 써 봅시다. :: 심호진 - AWS Community Day 2019AWSKRUG - AWS한국사용자모임
5.1K visualizações50 slides

Mais procurados(20)

20190821 AWS Black Belt Online Seminar AWS AppSync por Amazon Web Services Japan
20190821 AWS Black Belt Online Seminar AWS AppSync20190821 AWS Black Belt Online Seminar AWS AppSync
20190821 AWS Black Belt Online Seminar AWS AppSync
Amazon Web Services Japan33.9K visualizações
AWS Black Belt Techシリーズ AWS Directory Service por Amazon Web Services Japan
AWS Black Belt Techシリーズ AWS Directory ServiceAWS Black Belt Techシリーズ AWS Directory Service
AWS Black Belt Techシリーズ AWS Directory Service
Amazon Web Services Japan12.1K visualizações
Lambda + SQS アクセス負荷を下げた話 por AiKitago
Lambda + SQS アクセス負荷を下げた話Lambda + SQS アクセス負荷を下げた話
Lambda + SQS アクセス負荷を下げた話
AiKitago1.9K visualizações
Azure logic app por Thi Nguyen Dinh
Azure logic appAzure logic app
Azure logic app
Thi Nguyen Dinh197 visualizações
20180509 AWS Black Belt Online Seminar Amazon GuardDuty por Amazon Web Services Japan
20180509 AWS Black Belt Online Seminar Amazon GuardDuty20180509 AWS Black Belt Online Seminar Amazon GuardDuty
20180509 AWS Black Belt Online Seminar Amazon GuardDuty
Amazon Web Services Japan22.1K visualizações
Amazon.com 의 개인화 추천 / 예측 기능을 우리도 써 봅시다. :: 심호진 - AWS Community Day 2019 por AWSKRUG - AWS한국사용자모임
Amazon.com 의 개인화 추천 / 예측 기능을 우리도 써 봅시다. :: 심호진 - AWS Community Day 2019Amazon.com 의 개인화 추천 / 예측 기능을 우리도 써 봅시다. :: 심호진 - AWS Community Day 2019
Amazon.com 의 개인화 추천 / 예측 기능을 우리도 써 봅시다. :: 심호진 - AWS Community Day 2019
AWSKRUG - AWS한국사용자모임5.1K visualizações
Zaim 500万ユーザに向けて〜Aurora 編〜 por Wataru Nishimoto
Zaim 500万ユーザに向けて〜Aurora 編〜Zaim 500万ユーザに向けて〜Aurora 編〜
Zaim 500万ユーザに向けて〜Aurora 編〜
Wataru Nishimoto8.2K visualizações
ゲームアーキテクチャパターン (Aurora Serverless / DynamoDB) por Amazon Web Services Japan
ゲームアーキテクチャパターン (Aurora Serverless / DynamoDB)ゲームアーキテクチャパターン (Aurora Serverless / DynamoDB)
ゲームアーキテクチャパターン (Aurora Serverless / DynamoDB)
Amazon Web Services Japan2.6K visualizações
アプリケーション開発者のためのAzure Databricks入門 por Yoichi Kawasaki
アプリケーション開発者のためのAzure Databricks入門アプリケーション開発者のためのAzure Databricks入門
アプリケーション開発者のためのAzure Databricks入門
Yoichi Kawasaki3.9K visualizações
20200826 AWS Black Belt Online Seminar AWS CloudFormation por Amazon Web Services Japan
20200826 AWS Black Belt Online Seminar AWS CloudFormation 20200826 AWS Black Belt Online Seminar AWS CloudFormation
20200826 AWS Black Belt Online Seminar AWS CloudFormation
Amazon Web Services Japan34.4K visualizações
Hands-on SaaS: Constructing a Multi-Tenant Solution on AWS (ARC327-R1) - AWS ... por Amazon Web Services
Hands-on SaaS: Constructing a Multi-Tenant Solution on AWS (ARC327-R1) - AWS ...Hands-on SaaS: Constructing a Multi-Tenant Solution on AWS (ARC327-R1) - AWS ...
Hands-on SaaS: Constructing a Multi-Tenant Solution on AWS (ARC327-R1) - AWS ...
Amazon Web Services11.6K visualizações
How AWS Minimizes the Blast Radius of Failures (ARC338) - AWS re:Invent 2018 por Amazon Web Services
How AWS Minimizes the Blast Radius of Failures (ARC338) - AWS re:Invent 2018How AWS Minimizes the Blast Radius of Failures (ARC338) - AWS re:Invent 2018
How AWS Minimizes the Blast Radius of Failures (ARC338) - AWS re:Invent 2018
Amazon Web Services6.8K visualizações
Amazon Personalize 소개 (+ 실습 구성)::김영진, 솔루션즈 아키텍트, AWS::AWS AIML 스페셜 웨비나 por Amazon Web Services Korea
Amazon Personalize 소개 (+ 실습 구성)::김영진, 솔루션즈 아키텍트, AWS::AWS AIML 스페셜 웨비나Amazon Personalize 소개 (+ 실습 구성)::김영진, 솔루션즈 아키텍트, AWS::AWS AIML 스페셜 웨비나
Amazon Personalize 소개 (+ 실습 구성)::김영진, 솔루션즈 아키텍트, AWS::AWS AIML 스페셜 웨비나
Amazon Web Services Korea969 visualizações
ここがつらいよAws batch por Yu Yamada
ここがつらいよAws batchここがつらいよAws batch
ここがつらいよAws batch
Yu Yamada12.4K visualizações
AWS Lambdaのテストで役立つ各種ツール por Masaki Suzuki
AWS Lambdaのテストで役立つ各種ツールAWS Lambdaのテストで役立つ各種ツール
AWS Lambdaのテストで役立つ各種ツール
Masaki Suzuki1.8K visualizações
20190129 AWS Black Belt Online Seminar AWS Identity and Access Management (AW... por Amazon Web Services Japan
20190129 AWS Black Belt Online Seminar AWS Identity and Access Management (AW...20190129 AWS Black Belt Online Seminar AWS Identity and Access Management (AW...
20190129 AWS Black Belt Online Seminar AWS Identity and Access Management (AW...
Amazon Web Services Japan66.5K visualizações
Amazon DynamoDB Advanced Design Pattern por Amazon Web Services Japan
Amazon DynamoDB Advanced Design PatternAmazon DynamoDB Advanced Design Pattern
Amazon DynamoDB Advanced Design Pattern
Amazon Web Services Japan20.4K visualizações
AWS Black Belt Techシリーズ Amazon CloudSearch por Amazon Web Services Japan
AWS Black Belt Techシリーズ Amazon CloudSearchAWS Black Belt Techシリーズ Amazon CloudSearch
AWS Black Belt Techシリーズ Amazon CloudSearch
Amazon Web Services Japan11K visualizações
Hands-On Lab: Building a Serverless Real-Time Chat Application with AWS AppSync por Amazon Web Services
Hands-On Lab: Building a Serverless Real-Time Chat Application with AWS AppSyncHands-On Lab: Building a Serverless Real-Time Chat Application with AWS AppSync
Hands-On Lab: Building a Serverless Real-Time Chat Application with AWS AppSync
Amazon Web Services1.9K visualizações
AWS Black Belt Online Seminar 2017 AWS Elastic Beanstalk por Amazon Web Services Japan
AWS Black Belt Online Seminar 2017 AWS Elastic BeanstalkAWS Black Belt Online Seminar 2017 AWS Elastic Beanstalk
AWS Black Belt Online Seminar 2017 AWS Elastic Beanstalk
Amazon Web Services Japan45.4K visualizações

Similar a Azure serverless computing

Azure functions serverless por
Azure functions serverlessAzure functions serverless
Azure functions serverlessUdaiappa Ramachandran
298 visualizações17 slides
Serverless with Azure Functions por
Serverless with Azure FunctionsServerless with Azure Functions
Serverless with Azure FunctionsAndreas Willich
689 visualizações40 slides
Tokyo Azure Meetup #7 - Introduction to Serverless Architectures with Azure F... por
Tokyo Azure Meetup #7 - Introduction to Serverless Architectures with Azure F...Tokyo Azure Meetup #7 - Introduction to Serverless Architectures with Azure F...
Tokyo Azure Meetup #7 - Introduction to Serverless Architectures with Azure F...Tokyo Azure Meetup
1.4K visualizações48 slides
Durable Azure Functions por
Durable Azure FunctionsDurable Azure Functions
Durable Azure FunctionsPushkar Saraf
137 visualizações16 slides
Azure Functions 101 por
Azure Functions 101Azure Functions 101
Azure Functions 101Martin Abbott
385 visualizações21 slides
Building API in the cloud using Azure Functions por
Building API in the cloud using Azure FunctionsBuilding API in the cloud using Azure Functions
Building API in the cloud using Azure FunctionsAleksandar Bozinovski
142 visualizações38 slides

Similar a Azure serverless computing(20)

Serverless with Azure Functions por Andreas Willich
Serverless with Azure FunctionsServerless with Azure Functions
Serverless with Azure Functions
Andreas Willich689 visualizações
Tokyo Azure Meetup #7 - Introduction to Serverless Architectures with Azure F... por Tokyo Azure Meetup
Tokyo Azure Meetup #7 - Introduction to Serverless Architectures with Azure F...Tokyo Azure Meetup #7 - Introduction to Serverless Architectures with Azure F...
Tokyo Azure Meetup #7 - Introduction to Serverless Architectures with Azure F...
Tokyo Azure Meetup1.4K visualizações
Durable Azure Functions por Pushkar Saraf
Durable Azure FunctionsDurable Azure Functions
Durable Azure Functions
Pushkar Saraf137 visualizações
Azure Functions 101 por Martin Abbott
Azure Functions 101Azure Functions 101
Azure Functions 101
Martin Abbott385 visualizações
Building API in the cloud using Azure Functions por Aleksandar Bozinovski
Building API in the cloud using Azure FunctionsBuilding API in the cloud using Azure Functions
Building API in the cloud using Azure Functions
Aleksandar Bozinovski142 visualizações
Industrial IoT on Azure por Ivo Andreev
Industrial IoT on AzureIndustrial IoT on Azure
Industrial IoT on Azure
Ivo Andreev7.1K visualizações
SPS calgary 2017 introduction to azure functions microsoft flow por Vincent Biret
SPS calgary 2017 introduction to azure functions microsoft flowSPS calgary 2017 introduction to azure functions microsoft flow
SPS calgary 2017 introduction to azure functions microsoft flow
Vincent Biret538 visualizações
Introduction to Azure Functions por Callon Campbell
Introduction to Azure FunctionsIntroduction to Azure Functions
Introduction to Azure Functions
Callon Campbell4.6K visualizações
Going Serverless with Azure Functions #1 - Introduction to Azure Functions por Kasun Kodagoda
Going Serverless with Azure Functions #1 - Introduction to Azure FunctionsGoing Serverless with Azure Functions #1 - Introduction to Azure Functions
Going Serverless with Azure Functions #1 - Introduction to Azure Functions
Kasun Kodagoda172 visualizações
Azure full por Mohit Chhabra
Azure fullAzure full
Azure full
Mohit Chhabra220 visualizações
Tokyo azure meetup #8 - Azure Update, August por Kanio Dimitrov
Tokyo azure meetup #8 - Azure Update, AugustTokyo azure meetup #8 - Azure Update, August
Tokyo azure meetup #8 - Azure Update, August
Kanio Dimitrov114 visualizações
Tokyo azure meetup #8 azure update, august por Tokyo Azure Meetup
Tokyo azure meetup #8   azure update, augustTokyo azure meetup #8   azure update, august
Tokyo azure meetup #8 azure update, august
Tokyo Azure Meetup105 visualizações
Azure Functions in Action #CodePaLOUsa por Baskar rao Dsn
Azure Functions in Action #CodePaLOUsaAzure Functions in Action #CodePaLOUsa
Azure Functions in Action #CodePaLOUsa
Baskar rao Dsn93 visualizações
Tokyo Azure Meetup #4 - Build 2016 Overview por Tokyo Azure Meetup
Tokyo Azure Meetup #4 -  Build 2016 OverviewTokyo Azure Meetup #4 -  Build 2016 Overview
Tokyo Azure Meetup #4 - Build 2016 Overview
Tokyo Azure Meetup319 visualizações
Stay productive while slicing up the monolith por Markus Eisele
Stay productive while slicing up the monolith Stay productive while slicing up the monolith
Stay productive while slicing up the monolith
Markus Eisele438 visualizações
Microsoft Sentinel Deployment V1.pptx por saadatali65
Microsoft Sentinel Deployment V1.pptxMicrosoft Sentinel Deployment V1.pptx
Microsoft Sentinel Deployment V1.pptx
saadatali654 visualizações
Azure Serverless Toolbox por Johan Eriksson
Azure Serverless ToolboxAzure Serverless Toolbox
Azure Serverless Toolbox
Johan Eriksson78 visualizações
IT PRO | Connections 2020 : Introduction to Logic Apps and automation solutio... por George Grammatikos
IT PRO | Connections 2020 : Introduction to Logic Apps and automation solutio...IT PRO | Connections 2020 : Introduction to Logic Apps and automation solutio...
IT PRO | Connections 2020 : Introduction to Logic Apps and automation solutio...
George Grammatikos21 visualizações
2014.10.22 Building Azure Solutions with Office 365 por Marco Parenzan
2014.10.22 Building Azure Solutions with Office 3652014.10.22 Building Azure Solutions with Office 365
2014.10.22 Building Azure Solutions with Office 365
Marco Parenzan1K visualizações

Mais de Udaiappa Ramachandran

Vector Search using OpenAI in Azure Cognitive Search.pptx por
Vector Search using OpenAI in Azure Cognitive Search.pptxVector Search using OpenAI in Azure Cognitive Search.pptx
Vector Search using OpenAI in Azure Cognitive Search.pptxUdaiappa Ramachandran
14 visualizações16 slides
AzureOpenAI.pptx por
AzureOpenAI.pptxAzureOpenAI.pptx
AzureOpenAI.pptxUdaiappa Ramachandran
571 visualizações16 slides
OpenAI-Copilot-ChatGPT.pptx por
OpenAI-Copilot-ChatGPT.pptxOpenAI-Copilot-ChatGPT.pptx
OpenAI-Copilot-ChatGPT.pptxUdaiappa Ramachandran
553 visualizações13 slides
DiagnoseAndSolveproblems.pptx por
DiagnoseAndSolveproblems.pptxDiagnoseAndSolveproblems.pptx
DiagnoseAndSolveproblems.pptxUdaiappa Ramachandran
32 visualizações9 slides
MAUI.pptx por
MAUI.pptxMAUI.pptx
MAUI.pptxUdaiappa Ramachandran
78 visualizações10 slides
CosmosDB.pptx por
CosmosDB.pptxCosmosDB.pptx
CosmosDB.pptxUdaiappa Ramachandran
25 visualizações18 slides

Mais de Udaiappa Ramachandran(20)

Vector Search using OpenAI in Azure Cognitive Search.pptx por Udaiappa Ramachandran
Vector Search using OpenAI in Azure Cognitive Search.pptxVector Search using OpenAI in Azure Cognitive Search.pptx
Vector Search using OpenAI in Azure Cognitive Search.pptx
Udaiappa Ramachandran14 visualizações
Azure Automation and Update Management por Udaiappa Ramachandran
Azure Automation and Update ManagementAzure Automation and Update Management
Azure Automation and Update Management
Udaiappa Ramachandran511 visualizações
Knowledge Mining With Azure Search por Udaiappa Ramachandran
Knowledge Mining With Azure SearchKnowledge Mining With Azure Search
Knowledge Mining With Azure Search
Udaiappa Ramachandran158 visualizações
Azure Web Apps Advanced Security por Udaiappa Ramachandran
Azure Web Apps Advanced SecurityAzure Web Apps Advanced Security
Azure Web Apps Advanced Security
Udaiappa Ramachandran666 visualizações

Último

TrustArc Webinar - Managing Online Tracking Technology Vendors_ A Checklist f... por
TrustArc Webinar - Managing Online Tracking Technology Vendors_ A Checklist f...TrustArc Webinar - Managing Online Tracking Technology Vendors_ A Checklist f...
TrustArc Webinar - Managing Online Tracking Technology Vendors_ A Checklist f...TrustArc
77 visualizações29 slides
Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ... por
Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ...Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ...
Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ...ShapeBlue
35 visualizações10 slides
2FA and OAuth2 in CloudStack - Andrija Panić - ShapeBlue por
2FA and OAuth2 in CloudStack - Andrija Panić - ShapeBlue2FA and OAuth2 in CloudStack - Andrija Panić - ShapeBlue
2FA and OAuth2 in CloudStack - Andrija Panić - ShapeBlueShapeBlue
50 visualizações23 slides
How to Re-use Old Hardware with CloudStack. Saving Money and the Environment ... por
How to Re-use Old Hardware with CloudStack. Saving Money and the Environment ...How to Re-use Old Hardware with CloudStack. Saving Money and the Environment ...
How to Re-use Old Hardware with CloudStack. Saving Money and the Environment ...ShapeBlue
65 visualizações28 slides
Keynote Talk: Open Source is Not Dead - Charles Schulz - Vates por
Keynote Talk: Open Source is Not Dead - Charles Schulz - VatesKeynote Talk: Open Source is Not Dead - Charles Schulz - Vates
Keynote Talk: Open Source is Not Dead - Charles Schulz - VatesShapeBlue
119 visualizações15 slides
20231123_Camunda Meetup Vienna.pdf por
20231123_Camunda Meetup Vienna.pdf20231123_Camunda Meetup Vienna.pdf
20231123_Camunda Meetup Vienna.pdfPhactum Softwareentwicklung GmbH
46 visualizações73 slides

Último(20)

TrustArc Webinar - Managing Online Tracking Technology Vendors_ A Checklist f... por TrustArc
TrustArc Webinar - Managing Online Tracking Technology Vendors_ A Checklist f...TrustArc Webinar - Managing Online Tracking Technology Vendors_ A Checklist f...
TrustArc Webinar - Managing Online Tracking Technology Vendors_ A Checklist f...
TrustArc77 visualizações
Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ... por ShapeBlue
Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ...Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ...
Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ...
ShapeBlue35 visualizações
2FA and OAuth2 in CloudStack - Andrija Panić - ShapeBlue por ShapeBlue
2FA and OAuth2 in CloudStack - Andrija Panić - ShapeBlue2FA and OAuth2 in CloudStack - Andrija Panić - ShapeBlue
2FA and OAuth2 in CloudStack - Andrija Panić - ShapeBlue
ShapeBlue50 visualizações
How to Re-use Old Hardware with CloudStack. Saving Money and the Environment ... por ShapeBlue
How to Re-use Old Hardware with CloudStack. Saving Money and the Environment ...How to Re-use Old Hardware with CloudStack. Saving Money and the Environment ...
How to Re-use Old Hardware with CloudStack. Saving Money and the Environment ...
ShapeBlue65 visualizações
Keynote Talk: Open Source is Not Dead - Charles Schulz - Vates por ShapeBlue
Keynote Talk: Open Source is Not Dead - Charles Schulz - VatesKeynote Talk: Open Source is Not Dead - Charles Schulz - Vates
Keynote Talk: Open Source is Not Dead - Charles Schulz - Vates
ShapeBlue119 visualizações
Elevating Privacy and Security in CloudStack - Boris Stoyanov - ShapeBlue por ShapeBlue
Elevating Privacy and Security in CloudStack - Boris Stoyanov - ShapeBlueElevating Privacy and Security in CloudStack - Boris Stoyanov - ShapeBlue
Elevating Privacy and Security in CloudStack - Boris Stoyanov - ShapeBlue
ShapeBlue96 visualizações
Business Analyst Series 2023 - Week 4 Session 7 por DianaGray10
Business Analyst Series 2023 -  Week 4 Session 7Business Analyst Series 2023 -  Week 4 Session 7
Business Analyst Series 2023 - Week 4 Session 7
DianaGray1080 visualizações
"Surviving highload with Node.js", Andrii Shumada por Fwdays
"Surviving highload with Node.js", Andrii Shumada "Surviving highload with Node.js", Andrii Shumada
"Surviving highload with Node.js", Andrii Shumada
Fwdays40 visualizações
What’s New in CloudStack 4.19 - Abhishek Kumar - ShapeBlue por ShapeBlue
What’s New in CloudStack 4.19 - Abhishek Kumar - ShapeBlueWhat’s New in CloudStack 4.19 - Abhishek Kumar - ShapeBlue
What’s New in CloudStack 4.19 - Abhishek Kumar - ShapeBlue
ShapeBlue131 visualizações
Declarative Kubernetes Cluster Deployment with Cloudstack and Cluster API - O... por ShapeBlue
Declarative Kubernetes Cluster Deployment with Cloudstack and Cluster API - O...Declarative Kubernetes Cluster Deployment with Cloudstack and Cluster API - O...
Declarative Kubernetes Cluster Deployment with Cloudstack and Cluster API - O...
ShapeBlue42 visualizações
Ransomware is Knocking your Door_Final.pdf por Security Bootcamp
Ransomware is Knocking your Door_Final.pdfRansomware is Knocking your Door_Final.pdf
Ransomware is Knocking your Door_Final.pdf
Security Bootcamp76 visualizações
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha... por ShapeBlue
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...
ShapeBlue74 visualizações
DRaaS using Snapshot copy and destination selection (DRaaS) - Alexandre Matti... por ShapeBlue
DRaaS using Snapshot copy and destination selection (DRaaS) - Alexandre Matti...DRaaS using Snapshot copy and destination selection (DRaaS) - Alexandre Matti...
DRaaS using Snapshot copy and destination selection (DRaaS) - Alexandre Matti...
ShapeBlue46 visualizações
Extending KVM Host HA for Non-NFS Storage - Alex Ivanov - StorPool por ShapeBlue
Extending KVM Host HA for Non-NFS Storage -  Alex Ivanov - StorPoolExtending KVM Host HA for Non-NFS Storage -  Alex Ivanov - StorPool
Extending KVM Host HA for Non-NFS Storage - Alex Ivanov - StorPool
ShapeBlue40 visualizações
Transitioning from VMware vCloud to Apache CloudStack: A Path to Profitabilit... por ShapeBlue
Transitioning from VMware vCloud to Apache CloudStack: A Path to Profitabilit...Transitioning from VMware vCloud to Apache CloudStack: A Path to Profitabilit...
Transitioning from VMware vCloud to Apache CloudStack: A Path to Profitabilit...
ShapeBlue57 visualizações
Igniting Next Level Productivity with AI-Infused Data Integration Workflows por Safe Software
Igniting Next Level Productivity with AI-Infused Data Integration Workflows Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Safe Software344 visualizações
DRBD Deep Dive - Philipp Reisner - LINBIT por ShapeBlue
DRBD Deep Dive - Philipp Reisner - LINBITDRBD Deep Dive - Philipp Reisner - LINBIT
DRBD Deep Dive - Philipp Reisner - LINBIT
ShapeBlue62 visualizações
Developments to CloudStack’s SDN ecosystem: Integration with VMWare NSX 4 - P... por ShapeBlue
Developments to CloudStack’s SDN ecosystem: Integration with VMWare NSX 4 - P...Developments to CloudStack’s SDN ecosystem: Integration with VMWare NSX 4 - P...
Developments to CloudStack’s SDN ecosystem: Integration with VMWare NSX 4 - P...
ShapeBlue82 visualizações
Webinar : Desperately Seeking Transformation - Part 2: Insights from leading... por The Digital Insurer
Webinar : Desperately Seeking Transformation - Part 2:  Insights from leading...Webinar : Desperately Seeking Transformation - Part 2:  Insights from leading...
Webinar : Desperately Seeking Transformation - Part 2: Insights from leading...
The Digital Insurer31 visualizações

Azure serverless computing

  • 1. Azure Serverless Computing Udaiappa Ramachandran ( Udai ) https://udai.io
  • 2. Who am I? • Udaiappa Ramachandran ( Udai ) • CTO, Akumina, Inc., • Focus on Cloud Computing • Microsoft Azure, Amazon Web Services and Google • New Hampshire Cloud User Group (http://www.meetup.com/nashuaug ) • https://udai.io
  • 3. Agenda • Serverless computing • Azure Functions • Dependency Injection • Dynamic Site Hosting • Azure Durable Functions/2.0 • Key Vault in Azure Functions • Scripting Azure Functions • Demo • References • Q & A
  • 4. The evaluation of application platforms • On-premises • IaaS • PaaS • Serverless
  • 5. Serverless • What is serverless? • Built on Micro services • Abstraction of servers • Event-driven • Micro-billing (Pay-for-what-you-use) • Benefits • Automatically Scale • Focus on business logic • Faster time to market • Ops Cost Reduction
  • 7. Serverless components • Functions (serverless component) • Logic Apps (serverless workflow) • Flow (built on top of logic apps) • Event Grids (serverless events)
  • 8. Azure Functions (Code+EventData) • Choice of language • Pay-per-use pricing model • Bring your own dependencies • Integrated security • Simplified integration • Flexible development • Open-source • Flexible AppService Plan • Consumption • Premium • Dedicated (App Service)
  • 9. Supported Languages Language 1.x 2.x 3.x1 C# GA (.NET Framework 4.7) GA (.NET Core 2.2) Preview (.NET Core 3.x) JavaScript GA (Node 6) GA (Node 8 & 10) Preview (Node 8 & 10) F# GA (.NET Framework 4.7) GA (.NET Core 2.2) Preview (.NET Core 3.x) Java N/A GA (Java 8) Preview (Java 8) PowerShell Experimental Preview (PowerShell Core 6) Preview (PowerShell Core 6) Python Experimental GA (Python 3.6.x) Preview (Python 3.6.x) TypeScript Experimental GA2 Preview2 Bash Experimental N/A N/A Batch (.cmd, .bat) Experimental N/A N/A PHP Experimental N/A N/A 1The Functions v3.x runtime is in preview. 2Supported through transpiling to JavaScript.
  • 10. Triggers and Bindings 1 In the version 2.x runtime, all bindings except HTTP and Timer must be registered. See Register binding extensions. All supported 2.x bindings are also supported in the version 3.x, unless otherwise noted. Type 1.x 2.x1 Trigger Input Output Blob storage ✔ ✔ ✔ ✔ ✔ Cosmos DB ✔ ✔ ✔ ✔ ✔ Event Grid ✔ ✔ ✔ Event Hubs ✔ ✔ ✔ ✔ HTTP & webhooks ✔ ✔ ✔ ✔ IoT Hub ✔ ✔ ✔ ✔ Microsoft Graph Excel tables ✔ ✔ ✔ Microsoft Graph OneDrive files ✔ ✔ ✔ Microsoft Graph Outlook email ✔ ✔ Microsoft Graph events ✔ ✔ ✔ ✔ Microsoft Graph Auth tokens ✔ ✔ Mobile Apps ✔ ✔ ✔ Notification Hubs ✔ ✔ Queue storage ✔ ✔ ✔ ✔ SendGrid ✔ ✔ ✔ Service Bus ✔ ✔ ✔ ✔ SignalR ✔ ✔ ✔ Table storage ✔ ✔ ✔ ✔ Timer ✔ ✔ ✔ Twilio ✔ ✔ ✔
  • 11. Common Scenarios • Background Processing • Timer-based processing • Azure service event processing • SaaS event processing • Serverless web application architectures • Serverless mobile backends • Real-time stream processing • Real-time bot messaging
  • 12. IoC-Dependency Injection • IoC (Inversion of Control) • Service Location • Events • Delegates • DI • DI (Dependency Injection) • Constructor • Setter/Getter • Interface/Methods • DI Pros & Cons • DI Frameworks • .NET: Unity, Structure Map, Autofac, Ninject, and Managed Extensibility Framework (MEF) • JAVA: Weld, Spring, Guice, Play framework, Salta, Glassfish HK2, Dagger
  • 13. Dependency Injection in ASP.NET Core • IServiceProvider • Service Lifetimes • Transient • Scoped • Singleton • Add, TryAdd, and TryAddEnumerable
  • 14. DI in .NET Azure Functions • Pre-Requisites • Microsoft.Azure.Functions.Extensions • Caveats • The startup class is meant for only setup and registration • The dependency injection container only holds explicitly registered types • Service Lifetimes • Transient • Scoped • Singleton
  • 16. Azure Durable Functions • Extension of Functions and Web Jobs • Stateful workflows in orchestrator function Client, Orchestrator and Activity • DurableOrchestrationContext , DurableOrchestrationClient • bindings - OrchestrationTrigger, ActivityTrigger • External Events and External Orchestration • Versioning
  • 17. Azure Durable Functions - Patterns Function Chaining Fan-out/fan-in Async HTTP APIs Monitoring Human interaction https://docs.microsoft.com/en-us/azure/azure-functions/durable-functions-overview Aggregator
  • 18. Azure Durable Functions 2.0 • Durable Entities for stateful entities (actor-like) • Durable HTTP for resilient HTTP request within an orchestration • Pluggable state providers • Roslyn Analyzer • Interface and testability improvements
  • 20. Azure Functions - Proxies • Proxies are created as a new endpoint on function app • Proxy to another resource • Enables microservices on existing large implementation • Dev/Test scenario: Ability to modify request/response
  • 21. Key Vault in Azure Functions • Key Vault Integration of config using @Microsoft.KeyVault(<SECRET URI>) • Using assigned managed identities • Access from code using App Principal and SDK
  • 22. Testing Functions • Command-line tools • 3rd party products such as Postman and Swagger • Direct web calls via cURL • Web browser • Postman • Microsoft Azure Storage Explorer • Nested functions • Timer trigger • Queue trigger • Visual Studio Cloud Explorer
  • 23. Serverless from Amazon and Google • Amazon • Lambda • Google • Google Cloud Functions
  • 24. Reference • https://docs.microsoft.com/en-us/azure/azure-functions/ • https://github.com/azure/azure-functions/ • https://functions.azure.com/try • https://github.com/Azure/azure-functions-durable-extension • https://docs.microsoft.com/en-us/aspnet/core/blazor/get- started?view=aspnetcore-3.0&tabs=visual-studio • https://blazor.net • https://azure.com/functions • http://aka.ms/durable/2docs • http://aka.ms/durable/entitysamples • http://aka.ms/durable/circuitsample

Notas do Editor

  1. What is Serverless? Serverless is a new paradigm of computing that abstracts away the complexity associated with managing servers for mobile and API backends, ETL, data processing jobs, databases, and more. No upfront provisioning - Just provide your code and data, and Google dynamically provisions resources as needed. No management of servers - Get out of the repetitive and error-prone task of managing or automating server management like scaling your cluster, OS security patches, etc. Pay-for-what-you-use - Because of the dynamic provisioning and automatic scaling, you only pay for what you use. Why Serverless Applications with rapid time-to-market and unpredictable scale requirements benefit the most from Serverless. Here are some benefits experienced by Google Cloud Customers: Time-To-Market Improvement - Infrastructure management takes time, so eliminating it means you can get new code to production faster. Infrastructure Cost Reduction - Paying only for what you use means lower costs. Ops Cost Reduction - Automating repetitive provisioning and management tasks means you get to do higher-value devops tasks.
  2. Azure allocates a preconfigured server from the pool of warm workers to your app. This server already has the Functions runtime running on it, but it is unspecialized. This worker becomes specialized by configuring the Functions runtime in ways that are specific to your app. A few things happen to do this specialization, including: The Azure Functions infrastructure mounts your Azure Files content to the worker you’ve been assigned App settings specific to your function app are applied to the worker The Functions runtime resets, and any required extensions are loaded onto the worker. To figure out which extensions to load, the runtime reads the function.json files of any function in the function app. For instance, this happens if you’re using Durable Functions, or if you have input or output bindings. The functions themselves are loaded into memory by language providers. This will take a varying amount of time based on the size of your application. Your code runs.
  3. Functions - Code-first (imperative) Flow/Logic Apps - Designer-first (declarative)
  4. Create a “serverless” event-driven experience that extends the existing Azure App Service platform by building “nanoservices” that can scale based on demand Azure Functions are “event-driven” meaning they run based on associated and configure events, or “triggers”. For example an Azure Function could be triggered by a simple timer, such as running a process once every 24-hours, or triggered by an event in a document management system, such as when a new document is uploaded to a SharePoint library. Azure Functions can also respond to Azure-specific events, such as an image added to a Storage Blob or a notification arriving in a Message Queue.
  5. Without bindings, an Azure Function would just be a “disconnected” algorithm without any way to serve a purpose. Bindings server to connect functions and output to other services. Some of the most common binding types and features are listed in the table, however variations and adaptations can and do exist.
  6. IOC (Inversion of control) is a general parent term while DI (Dependency injection) is a subset of IOC. IOC is a concept where the flow of application is inverted IoC is a generic term meaning rather than having the application call the methods in a framework, the framework calls implementations provided by the application. DI is a form of IoC, where implementations are passed into an object through constructors/setters/service lookups, which the object will 'depend' on in order to behave correctly. Advantages Dependency injection allows a client the flexibility of being configurable. Only the client's behavior is fixed. Dependency injection can be used to externalize a system's configuration. Dependency injection doesn’t require any change in code behavior Dependency injection allows a client to remove all knowledge of a concrete implementation that it needs to use. This helps isolate the client from the impact of design changes and defects. It promotes reusability, testability and maintainability Reduction of boilerplate code in the application objects, since all work to initialize or set up dependencies is handled by a provider component Dependency injection allows concurrent or independent development. Two developers can independently develop classes that use each other, while only needing to know the interface the classes will communicate through. Dependency Injection decreases coupling between a class and its dependency. Disadvantages Dependency injection can make code difficult to trace (read) because it separates behavior from construction. Dependency injection frameworks are implemented with reflection or dynamic programming. Dependency injection can encourage dependence on a dependency injection framework.
  7. https://docs.microsoft.com/en-us/aspnet/core/fundamentals/dependency-injection?view=aspnetcore-3.0
  8. https://github.com/fabiocav/azfunc-di-demo https://channel9.msdn.com/Shows/On-NET/Leveraging-the-Dependency-Injection-support-in-Azure-Functions The startup class is meant for only setup and registration. Avoid using services registered at startup during the startup process. For instance, don't try to log a message in a logger that is being registered during startup. This point of the registration process is too early for your services to be available for use. After the Configure method is run, the Functions runtime continues to register additional dependencies, which can affect how your services operate. The dependency injection container only holds explicitly registered types. The only services available as injectable types are what are setup in the Configure method. As a result, Functions-specific types like BindingContext and ExecutionContext aren't available during setup or as injectable types.
  9. Web Assembly is underlying technology where browser can execute exes; BLAZOR is .NET implementation .NET in the browser Blazor lets you build interactive web Uis using C# instead of JavaScript Can use WebAssembly to run .NET in a client-side browser dotnet new blazorwasm
  10. Durable Functions is an extension of Azure Functions and Azure WebJobs that lets you write stateful functions in a serverless environment. The extension manages state, checkpoints, and restarts for you. Versioning: Do nothing, Stop all in-flight instances, Side-by-side deployments Durable Entities, Examples and Scenarios You can use three durable function types: client, orchestrator, and activity. Client functions are the entry point for creating an instance of a Durable Functions orchestration. They can run in response to an event from many sources, such as a new HTTP request arriving, a message being posted to a message queue, an event arriving in an event stream. You can write them in any of the supported languages. Orchestrator functions describe how actions are executed, and the order in which they are run. You write the orchestration logic in code (C# or JavaScript). Activity functions are the basic units of work in a durable function orchestration. An activity function contains the actual work performed by the tasks being orchestrated Workflow function -- Durable Function Type Submitting a project design proposal for approval --Client Function Assign an Approval task to relevant member of staff --Orchestration Function Approval task --Activity Function Escalation task --Activity Function
  11. Durable Functions is an extension of Azure Functions and Azure WebJobs that lets you write stateful functions in a serverless environment. The extension manages state, checkpoints, and restarts for you. Pattern #1: Function chaining Function chaining refers to the pattern of executing a sequence of functions in a particular order. Often the output of one function needs to be applied to the input of another function Pattern #2: Fan-out/fan-in Fan-out/fan-in refers to the pattern of executing multiple functions in parallel, and then waiting for all to finish. Often some aggregation work is done on results returned from the functions. Pattern #3: Async HTTP APIs The third pattern is all about the problem of coordinating the state of long-running operations with external clients. A common way to implement this pattern is by having the long-running action triggered by an HTTP call, and then redirecting the client to a status endpoint that they can poll to learn when the operation completes. Pattern #4: Monitoring The monitor pattern refers to a flexible recurring process in a workflow - for example, polling until certain conditions are met. A regular timer-trigger can address a simple scenario, such as a periodic cleanup job, but its interval is static and managing instance lifetimes becomes complex. Durable Functions enables flexible recurrence intervals, task lifetime management, and the ability to create multiple monitor processes from a single orchestration. Pattern #5: Human interaction Many processes involve some kind of human interaction. The tricky thing about involving humans in an automated process is that people are not always as highly available and responsive as cloud services. Automated processes must allow for this, and they often do so by using timeouts and compensation logic. Pattern #6: Aggregator (preview) The sixth pattern is about aggregating event data over a period of time into a single, addressable entity. In this pattern, the data being aggregated may come from multiple sources, may be delivered in batches, or may be scattered over long-periods of time. The aggregator might need to take action on event data as it arrives, and external clients may need to query the aggregated data. The tricky thing about trying to implement this pattern with normal, stateless functions is that concurrency control becomes a huge challenge. Not only do you need to worry about multiple threads modifying the same data at the same time, you also need to worry about ensuring that the aggregator only runs on a single VM at a time.
  12. Microsoft.Azure.WebJobs.Extensions.DurableTask - 2.0.0-beta2 Microsoft.NET.Sdk.Functions- 1.0.29
  13. Many Azure Functions are exposed via an actual URL that can be called directly from a web client or browser. When an Azure Function is not exposed via a URL its common practice to call the function from another dunction, such as a Timer-based Function for testing purposes only. Since Azure Functions can be nested, testing scenarios can be quite varied. For managing and testing Azure Functions that integrate with Storage Containers, Microsoft provides the Microsoft Azure Storage Explorer, as well as the Visual Studio Cloud Explorer. The Logs console in the Azure Function Designer is also a great way to view and trace function processing.
  14. .net, javascript durable entity,actor can only be .net sdk we also working on python support logic app declarative vs durable functions functions is own flavor of sdk az functions .net core 3 actor=a class that can contain state and modifes that state by processing messages it receives actor reference=a handle to an actor. alows you to send the actor messages without knowing its implementation type or location on network Actor system=a collection of actors that exist inside a signgle process and communicate via in-memory message passing cluster=a collection of networked actor systems whose actors communicate via TCP message passing https://docs.microsoft.com/en-us/samples/browse/?products=azure&term=functions https://github.com/Azure/azure-functions-durable-extension/tree/v2/samples/v2/entitites-csharp/Chirper