SlideShare a Scribd company logo
© Betabit Nederland B.V.
Oscar van Tol
o.van.tol@betabit.nl
@oscarvantol
Rick van den Bosch
r.van.den.bosch@betabit.nl
@rickvdbosch
Dude, Where’s my Server?
about Serverless computing
© Betabit Nederland B.V.
Who’s who?
Oscar van Tol Rick van den Bosch
© Betabit Nederland B.V.
Agenda
PART I
What is Serverless?
Serverless vs. Alternatives
NoOps?
Benefits & Drawbacks
Tools
Microsoft Flow
demo
Azure Logic Apps
demo
PART II
Azure Functions
demo
Flow, Logic Apps & Functions
Function Extensions
BONUS: Azure EventGrid
Best Practices
Conclusion
© Betabit Nederland B.V.
What is Serverless?
Does Serverless mean that there are no servers?
Does Serverless mean that there are less servers?
Maybe Serverless is not a great name...
© Betabit Nederland B.V.
I want to go on that ride, Daddy.
Source:
© Betabit Nederland B.V.
About Serverless…
“Serverless is not just a fad or buzzword.
{…}
With serverless, you need only worry about your code
and how it is triggered. The platform takes care of the
rest.”
© Betabit Nederland B.V.
Serverless computing defined
• Abstraction of servers
• Event-driven scale
• Micro-billing
Focus on apps
not servers
© Betabit Nederland B.V.
Serverless and Serverless
• Backend as a Service
• Functions as a Service
© Betabit Nederland B.V.
Backend as a Service
• 3rd party applications / services in the cloud to manage server-side logic and state
• Applications using them were the first to be called Serverless
• Rich client applications (SPA or mobile apps)
© Betabit Nederland B.V.
(Mobile) Backend as a Service: Example
© Betabit Nederland B.V.
Function as a Service
• Server-side logic written by developer
• Run in stateless compute containers
• Event-triggered
• Short-lived
• Fully managed by 3rd party
© Betabit Nederland B.V.
Functions as a Service: Example
© Betabit Nederland B.V.
And then…
Serverless vs. Alternatives
IaaS, PaaS & SaaS
IaaS PaaS SaaS
MIGRATE
to it
DEVELOP
on it
CONSUME
it
IaaS, PaaS & SaaS & FaaS
IaaS PaaS SaaS
Containers
Serverless
© Betabit Nederland B.V.
“Most PaaS applications are not
geared towards bringing entire applications
up and down for every request, whereas
ServerLess platforms do exactly this. …”
© Betabit Nederland B.V.
And then…
NoOps?
© Betabit Nederland B.V.
NoOps?
• Serverless might mean ‘No internal SysAdmin’
• But Ops still needed for…
• Monitoring
• Deployments
• Security
• And the rest (they normally don’t have time for)
© Betabit Nederland B.V.
And then…
Benefits & Drawbacks
© Betabit Nederland B.V.
Benefits: Costs
• Economy of Scale
• BaaS:
• Less development
• Less infrastructure
• Less ops
• FaaS:
• Only pay for the compute you need
© Betabit Nederland B.V.
Benefits: Ops
• Simpler scaling
• Reduced packaging and deployment complexity
• Time to market / experimentation
© Betabit Nederland B.V.
Drawbacks: Inherent
• Vendor control
• Vendor lock-in
• Multitenancy
• Security concerns
• FaaS == stateless
© Betabit Nederland B.V.
Drawbacks: Implementation
• Execution duration
• Testing
• Monitoring / Debugging
• Lack of tools & experience
© Betabit Nederland B.V.
And then…
Tools
© Betabit Nederland B.V.
First wave
• Many barriers to developer productivity
• No debugging support
• No local development experience
• Monitoring was hard
• Serverless became popular despite these downsides
© Betabit Nederland B.V.
Now
• Tooling and local development experience unique among cloud vendors
• Azure Functions runtime for local development
• Triggering off Azure events (hybrid debugging experience)
• Application Insights integration
• Live event stream
• Runtime metrics
• Log custom metrics
• Alerts
© Betabit Nederland B.V.
And then…
Microsoft Flow
© Betabit Nederland B.V.
Flow?
“Microsoft Flow is a product to help you set up
automated workflows between your
favorite apps and services to
synchronize files, get notifications,
collect data, and more.”
© Betabit Nederland B.V.
Connectors
150+ and counting
Not only Microsoft apps & services
http://bit.ly/dwms-flowconn
© Betabit Nederland B.V.
Flow templates
© Betabit Nederland B.V.
Microsoft Flow Pricing
© Betabit Nederland B.V.
Microsoft Flow
Let's code!
Actually, not really...
© Betabit Nederland B.V.
And then…
Azure Logic Apps
© Betabit Nederland B.V.
Logic Apps?
“Automate the access and use of data
across clouds
without writing code”
© Betabit Nederland B.V.
Logic Apps!
Out-of-the-box Connect and integrate data B2B and enterprise
Connectors from the cloud to on-prem messaging in the cloud
Take advantage of Tap into Azure Services
BizTalk Server investments
© Betabit Nederland B.V.
Logic Apps!
© Betabit Nederland B.V.
Isn’t this just Flow?
• Both are configuration-first integration services
• Flow is built on top of Logic Apps
• Flow is Business oriented, Logic Apps are developer oriented
• Logic Apps are a part of Azure
Flow empowers any office worker to perform simple integrations without going through
developers or IT
Logic Apps can enable advanced or mission-critical integrations where enterprise-level
DevOps and security practices are required
© Betabit Nederland B.V.
Flow or Logic Apps?
© Betabit Nederland B.V.
Example Logic app
© Betabit Nederland B.V.
Logic Apps Pricing
© Betabit Nederland B.V.
Azure Logic Apps
Let's code!
Well, almost...
© Betabit Nederland B.V.
BREAK
© Betabit Nederland B.V.
When were Azure Functions
first introduced?
© Betabit Nederland B.V.
And then…
Azure Functions
© Betabit Nederland B.V.
Azure Functions
© Betabit Nederland B.V.
Azure Functions
Manage apps,
not infrastructure
Develop your way
Bind into services
© Betabit Nederland B.V.
What can you do?
• Timer-based processing
• Azure service event processing
• SaaS event processing
• Serverless web application architectures
• Serverless mobile back ends
• Real-time stream processing
• Real-time bot messaging
© Betabit Nederland B.V.
Triggers
© Betabit Nederland B.V.
Routing
Default: http://<yourapp>.azurewebsites.net/api/<funcname>
© Betabit Nederland B.V.
Routing
Url: http://<yourapp>.azurewebsites.net/api/products/electronics/123
© Betabit Nederland B.V.
Routing
All functions routes are prefixed with api by default
Can be changed:
© Betabit Nederland B.V.
Throttling
• maxOutstandingRequests
Too many: 429 Too busy
• maxConcurrentRequests
Default: unbound
• dynamicThrottlesEnabled
Checks system performance counters
Default: false
> 80%: 429 Too busy
© Betabit Nederland B.V.
Limitations
The default timeout for Functions on a Consumption Plan is 5 minutes
Can be increased to 10 minutes
© Betabit Nederland B.V.
Scaling
© Betabit Nederland B.V.
Dual abstraction
Serverless abstracts away the compute
Bindings abstract away the services you interact with
© Betabit Nederland B.V.
Functions Pricing
© Betabit Nederland B.V.
Billing example - Resources
© Betabit Nederland B.V.
Billing example - Executions
© Betabit Nederland B.V.
And then…
Let's code!
Finally some real code!
© Betabit Nederland B.V.
And then…
Flow, Logic Apps & Functions
© Betabit Nederland B.V.
When do I choose what?
• For simple business optimization, use Flow
• More advanced integration, DevOps need or security compliance, use Logic Apps
• Highly custom transformation or specialized code, use Functions.
© Betabit Nederland B.V.
Putting it all together
You can…
• … call a logic app in a flow
• … call a function in a logic app
• … call a logic app in a function
“Integration continues to improve.
Any investment you make in
these three technologies is worthwhile.”
© Betabit Nederland B.V.
And then…
Function Extensions
© Betabit Nederland B.V.
Functions Extensions
Durable Functions http://bit.ly/dwms-durable
• Function Chaining
• Fan-out/Fan-in
• Stateful Singleton
• Human Interaction & Timeouts
© Betabit Nederland B.V.
And then…
Azure EventGrid
© Betabit Nederland B.V.
Event Grid?
Simplify event
consumption
Build reliable
cloud apps
Focus on product
innovation
© Betabit Nederland B.V.
What is EventGrid?
• Fully managed
• Intelligent
• Event routing
Allows for uniform event consumption using a publish-subscribe model
Enables you to react to relevant events across both Azure and non-Azure services in
near-real time fashion.
Allows you to easily build applications with event-based architectures
© Betabit Nederland B.V.
Concepts
• Events
• Event sources/publishers
• Topics
• Event subscriptions
• Event handlers
What?
Where?
For who?
Where to?
Handle it!
© Betabit Nederland B.V.
Concepts
© Betabit Nederland B.V.
Reacting to Blob Storage events
Azure CLI
az provider register --namespace Microsoft.EventGrid
az feature register --name storageEventSubscriptions --namespace Microsoft.EventGrid
Subscriptions are added to the Preview Program as capacity is available.
© Betabit Nederland B.V.
Example uses
Serverless application architectures
Ops automation
Application integration
© Betabit Nederland B.V.
And then…
Functions Best Practices
© Betabit Nederland B.V.
Best practices
- Avoid long running Functions
- Cross Function communication
- Call
- Queue
- Storage
- ?
- Functions should be Stateless (and Idempotent)
- Create defensive Functions
- Don’t mix test and production code in the same Functions app
- Use async code but avoid blocking calls
- Keep Functions small & fast
© Betabit Nederland B.V.
And then…
© Betabit Nederland B.V.
Conclusion
• Still in the early stages
• Push better architecture (micro-services!)
• Reduce time-to-market
© Betabit Nederland B.V.
Resources & links
Azure Functions Documentation http://bit.ly/dwms-azfunc
Twitter @oscarvantol
@rickvdbosch
Blog Oscar van Tol
Rick van den Bosch
© Betabit Nederland B.V.
Shameless Plug
Microsoft TechDays 2017
12 & 13 october
RAI Amsterdam
Friday October 13th -->
Bedankt voor je aandacht
© Betabit Nederland B.V.

More Related Content

What's hot

How to Manage VMware vSphere Like AWS and Azure
How to Manage VMware vSphere Like AWS and AzureHow to Manage VMware vSphere Like AWS and Azure
How to Manage VMware vSphere Like AWS and Azure
RightScale
 
Orchestrating PaaS and IaaS+ with RightScale
Orchestrating PaaS and IaaS+ with RightScaleOrchestrating PaaS and IaaS+ with RightScale
Orchestrating PaaS and IaaS+ with RightScale
RightScale
 
Serverless Messaging with Microsoft Azure by Steef-Jan Wiggers
Serverless Messaging with Microsoft Azure by Steef-Jan WiggersServerless Messaging with Microsoft Azure by Steef-Jan Wiggers
Serverless Messaging with Microsoft Azure by Steef-Jan Wiggers
Adam Walhout
 
Cloud computing options
Cloud computing optionsCloud computing options
Cloud computing options
botsplash.com
 
Using AWS Lambda for Infrastructure Automation and Beyond
Using AWS Lambda for Infrastructure Automation and BeyondUsing AWS Lambda for Infrastructure Automation and Beyond
Using AWS Lambda for Infrastructure Automation and Beyond
SoftServe
 
Real-time web applications using SharePoint, SignalR and Azure Service Bus
Real-time web applications using SharePoint, SignalR and Azure Service BusReal-time web applications using SharePoint, SignalR and Azure Service Bus
Real-time web applications using SharePoint, SignalR and Azure Service Bus
Dinusha Kumarasiri
 
How to Manage Clouds, VMs and Bare Metal via RightScale
How to Manage Clouds, VMs and Bare Metal via RightScaleHow to Manage Clouds, VMs and Bare Metal via RightScale
How to Manage Clouds, VMs and Bare Metal via RightScale
RightScale
 
Introduction to Azure PaaS services (Nick Trogh at Codit Azure PaaS Event)
Introduction to Azure PaaS services (Nick Trogh at Codit Azure PaaS Event) Introduction to Azure PaaS services (Nick Trogh at Codit Azure PaaS Event)
Introduction to Azure PaaS services (Nick Trogh at Codit Azure PaaS Event)
Codit
 
Best Practices for Your CMP RFP or RFI
Best Practices for Your CMP RFP or RFIBest Practices for Your CMP RFP or RFI
Best Practices for Your CMP RFP or RFI
RightScale
 
The Rise of Serverless Architectures
The Rise of Serverless ArchitecturesThe Rise of Serverless Architectures
The Rise of Serverless Architectures
Benny Bauer
 
Serverless beyond AWS Lambda
Serverless beyond AWS LambdaServerless beyond AWS Lambda
Serverless beyond AWS Lambda
Ben Kehoe
 
Real time communication with Azure Functions with Azure SignalR
Real time communication with Azure Functions with Azure SignalRReal time communication with Azure Functions with Azure SignalR
Real time communication with Azure Functions with Azure SignalR
Dinusha Kumarasiri
 
Hybrid Integration with BizTalk Server - ACSUG
Hybrid Integration with BizTalk Server - ACSUGHybrid Integration with BizTalk Server - ACSUG
Hybrid Integration with BizTalk Server - ACSUG
Wagner Silveira
 
Serverless Architecture at iRobot
Serverless Architecture at iRobotServerless Architecture at iRobot
Serverless Architecture at iRobot
Ben Kehoe
 
Serverless Event-Driven Programming: Are We Ready for the Paradigm Shift?
Serverless Event-Driven Programming: Are We Ready for the Paradigm Shift?Serverless Event-Driven Programming: Are We Ready for the Paradigm Shift?
Serverless Event-Driven Programming: Are We Ready for the Paradigm Shift?
Ben Kehoe
 
Cloud Migration and Portability (with and without Containers)
Cloud Migration and Portability (with and without Containers)Cloud Migration and Portability (with and without Containers)
Cloud Migration and Portability (with and without Containers)
RightScale
 
Serverless Microservices
Serverless MicroservicesServerless Microservices
Serverless Microservices
Amazon Web Services
 
Logic Apps and Azure Functions
Logic Apps and Azure FunctionsLogic Apps and Azure Functions
Logic Apps and Azure Functions
Daniel Toomey
 
Microservices and elastic resource pools with Amazon EC2 Container Service
Microservices and elastic resource pools with Amazon EC2 Container ServiceMicroservices and elastic resource pools with Amazon EC2 Container Service
Microservices and elastic resource pools with Amazon EC2 Container Service
Boyan Dimitrov
 
How a CMP Can Help You Right Now
How a CMP Can Help You Right NowHow a CMP Can Help You Right Now
How a CMP Can Help You Right Now
RightScale
 

What's hot (20)

How to Manage VMware vSphere Like AWS and Azure
How to Manage VMware vSphere Like AWS and AzureHow to Manage VMware vSphere Like AWS and Azure
How to Manage VMware vSphere Like AWS and Azure
 
Orchestrating PaaS and IaaS+ with RightScale
Orchestrating PaaS and IaaS+ with RightScaleOrchestrating PaaS and IaaS+ with RightScale
Orchestrating PaaS and IaaS+ with RightScale
 
Serverless Messaging with Microsoft Azure by Steef-Jan Wiggers
Serverless Messaging with Microsoft Azure by Steef-Jan WiggersServerless Messaging with Microsoft Azure by Steef-Jan Wiggers
Serverless Messaging with Microsoft Azure by Steef-Jan Wiggers
 
Cloud computing options
Cloud computing optionsCloud computing options
Cloud computing options
 
Using AWS Lambda for Infrastructure Automation and Beyond
Using AWS Lambda for Infrastructure Automation and BeyondUsing AWS Lambda for Infrastructure Automation and Beyond
Using AWS Lambda for Infrastructure Automation and Beyond
 
Real-time web applications using SharePoint, SignalR and Azure Service Bus
Real-time web applications using SharePoint, SignalR and Azure Service BusReal-time web applications using SharePoint, SignalR and Azure Service Bus
Real-time web applications using SharePoint, SignalR and Azure Service Bus
 
How to Manage Clouds, VMs and Bare Metal via RightScale
How to Manage Clouds, VMs and Bare Metal via RightScaleHow to Manage Clouds, VMs and Bare Metal via RightScale
How to Manage Clouds, VMs and Bare Metal via RightScale
 
Introduction to Azure PaaS services (Nick Trogh at Codit Azure PaaS Event)
Introduction to Azure PaaS services (Nick Trogh at Codit Azure PaaS Event) Introduction to Azure PaaS services (Nick Trogh at Codit Azure PaaS Event)
Introduction to Azure PaaS services (Nick Trogh at Codit Azure PaaS Event)
 
Best Practices for Your CMP RFP or RFI
Best Practices for Your CMP RFP or RFIBest Practices for Your CMP RFP or RFI
Best Practices for Your CMP RFP or RFI
 
The Rise of Serverless Architectures
The Rise of Serverless ArchitecturesThe Rise of Serverless Architectures
The Rise of Serverless Architectures
 
Serverless beyond AWS Lambda
Serverless beyond AWS LambdaServerless beyond AWS Lambda
Serverless beyond AWS Lambda
 
Real time communication with Azure Functions with Azure SignalR
Real time communication with Azure Functions with Azure SignalRReal time communication with Azure Functions with Azure SignalR
Real time communication with Azure Functions with Azure SignalR
 
Hybrid Integration with BizTalk Server - ACSUG
Hybrid Integration with BizTalk Server - ACSUGHybrid Integration with BizTalk Server - ACSUG
Hybrid Integration with BizTalk Server - ACSUG
 
Serverless Architecture at iRobot
Serverless Architecture at iRobotServerless Architecture at iRobot
Serverless Architecture at iRobot
 
Serverless Event-Driven Programming: Are We Ready for the Paradigm Shift?
Serverless Event-Driven Programming: Are We Ready for the Paradigm Shift?Serverless Event-Driven Programming: Are We Ready for the Paradigm Shift?
Serverless Event-Driven Programming: Are We Ready for the Paradigm Shift?
 
Cloud Migration and Portability (with and without Containers)
Cloud Migration and Portability (with and without Containers)Cloud Migration and Portability (with and without Containers)
Cloud Migration and Portability (with and without Containers)
 
Serverless Microservices
Serverless MicroservicesServerless Microservices
Serverless Microservices
 
Logic Apps and Azure Functions
Logic Apps and Azure FunctionsLogic Apps and Azure Functions
Logic Apps and Azure Functions
 
Microservices and elastic resource pools with Amazon EC2 Container Service
Microservices and elastic resource pools with Amazon EC2 Container ServiceMicroservices and elastic resource pools with Amazon EC2 Container Service
Microservices and elastic resource pools with Amazon EC2 Container Service
 
How a CMP Can Help You Right Now
How a CMP Can Help You Right NowHow a CMP Can Help You Right Now
How a CMP Can Help You Right Now
 

Similar to Dude, Where's my Server?

Global Azure Bootcamp 2017 at Betabit Utrecht
Global Azure Bootcamp 2017 at Betabit UtrechtGlobal Azure Bootcamp 2017 at Betabit Utrecht
Global Azure Bootcamp 2017 at Betabit Utrecht
Daniël te Winkel
 
Keynote speech
Keynote speechKeynote speech
Keynote speech
BizTalk360
 
Getting started with development in azure
Getting started with development in azureGetting started with development in azure
Getting started with development in azure
Jasjit Chopra
 
Application modernization with azure PaaS and FaaS
Application modernization with azure PaaS and FaaSApplication modernization with azure PaaS and FaaS
Application modernization with azure PaaS and FaaS
Dileepa Rajapaksa
 
#SPSBrussels 2017 vincent biret #azure #functions microsoft #flow
#SPSBrussels 2017 vincent biret #azure #functions microsoft #flow#SPSBrussels 2017 vincent biret #azure #functions microsoft #flow
#SPSBrussels 2017 vincent biret #azure #functions microsoft #flow
Vincent Biret
 
Introduction to Microsoft Flow and Azure Functions
Introduction to Microsoft Flow and Azure FunctionsIntroduction to Microsoft Flow and Azure Functions
Introduction to Microsoft Flow and Azure Functions
BIWUG
 
Cloud Native Day: Cloud-native Anwendungsentwicklung im Jahr 2021
Cloud Native Day: Cloud-native Anwendungsentwicklung im Jahr 2021Cloud Native Day: Cloud-native Anwendungsentwicklung im Jahr 2021
Cloud Native Day: Cloud-native Anwendungsentwicklung im Jahr 2021
Nico Meisenzahl
 
#SPFestSea azr302 The SharePoint Framework and the #MicrosoftGraph under ster...
#SPFestSea azr302 The SharePoint Framework and the #MicrosoftGraph under ster...#SPFestSea azr302 The SharePoint Framework and the #MicrosoftGraph under ster...
#SPFestSea azr302 The SharePoint Framework and the #MicrosoftGraph under ster...
Vincent Biret
 
The new Azure App Service Architecture
The new Azure App Service ArchitectureThe new Azure App Service Architecture
The new Azure App Service Architecture
João Pedro Martins
 
A Technology Backgrounder to Serverless Architecture - A Whitepaper by RapidV...
A Technology Backgrounder to Serverless Architecture - A Whitepaper by RapidV...A Technology Backgrounder to Serverless Architecture - A Whitepaper by RapidV...
A Technology Backgrounder to Serverless Architecture - A Whitepaper by RapidV...
RapidValue
 
Cloud integration: what's in it for you? (Toon Vanhoutte & Massimo Crippa at ...
Cloud integration: what's in it for you? (Toon Vanhoutte & Massimo Crippa at ...Cloud integration: what's in it for you? (Toon Vanhoutte & Massimo Crippa at ...
Cloud integration: what's in it for you? (Toon Vanhoutte & Massimo Crippa at ...
Codit
 
Building Event-Driven Workflows with Knative and Tekton
Building Event-Driven Workflows with Knative and TektonBuilding Event-Driven Workflows with Knative and Tekton
Building Event-Driven Workflows with Knative and Tekton
Leon Stigter
 
Het Microsoft Integratie Platform – Welk model past u het beste? (Steef Jan W...
Het Microsoft Integratie Platform – Welk model past u het beste? (Steef Jan W...Het Microsoft Integratie Platform – Welk model past u het beste? (Steef Jan W...
Het Microsoft Integratie Platform – Welk model past u het beste? (Steef Jan W...
Codit
 
SPFestDc AZR204 Microsoft Graph and SharePoint Framework under steroids with ...
SPFestDc AZR204 Microsoft Graph and SharePoint Framework under steroids with ...SPFestDc AZR204 Microsoft Graph and SharePoint Framework under steroids with ...
SPFestDc AZR204 Microsoft Graph and SharePoint Framework under steroids with ...
Vincent Biret
 
What serverless means for enterprise apps
What serverless means for enterprise appsWhat serverless means for enterprise apps
What serverless means for enterprise apps
Sumit Sarkar
 
Hybrid integrationwithsap (Glenn Colpaert @ Integration Monday)
Hybrid integrationwithsap (Glenn Colpaert @ Integration Monday)Hybrid integrationwithsap (Glenn Colpaert @ Integration Monday)
Hybrid integrationwithsap (Glenn Colpaert @ Integration Monday)
Codit
 
Cloud Computing - What is it?
Cloud Computing - What is it?Cloud Computing - What is it?
Cloud Computing - What is it?
Liquid Accounts
 
Sps toronto introduction to azure functions microsoft flow
Sps toronto introduction to azure functions microsoft flowSps toronto introduction to azure functions microsoft flow
Sps toronto introduction to azure functions microsoft flow
Vincent Biret
 
Azure App Services.pdf
Azure App Services.pdfAzure App Services.pdf
Azure App Services.pdf
ssuser37952a
 
RightScale Webinar: Operationalize Your Enterprise AWS Usage Through an IT Ve...
RightScale Webinar: Operationalize Your Enterprise AWS Usage Through an IT Ve...RightScale Webinar: Operationalize Your Enterprise AWS Usage Through an IT Ve...
RightScale Webinar: Operationalize Your Enterprise AWS Usage Through an IT Ve...
RightScale
 

Similar to Dude, Where's my Server? (20)

Global Azure Bootcamp 2017 at Betabit Utrecht
Global Azure Bootcamp 2017 at Betabit UtrechtGlobal Azure Bootcamp 2017 at Betabit Utrecht
Global Azure Bootcamp 2017 at Betabit Utrecht
 
Keynote speech
Keynote speechKeynote speech
Keynote speech
 
Getting started with development in azure
Getting started with development in azureGetting started with development in azure
Getting started with development in azure
 
Application modernization with azure PaaS and FaaS
Application modernization with azure PaaS and FaaSApplication modernization with azure PaaS and FaaS
Application modernization with azure PaaS and FaaS
 
#SPSBrussels 2017 vincent biret #azure #functions microsoft #flow
#SPSBrussels 2017 vincent biret #azure #functions microsoft #flow#SPSBrussels 2017 vincent biret #azure #functions microsoft #flow
#SPSBrussels 2017 vincent biret #azure #functions microsoft #flow
 
Introduction to Microsoft Flow and Azure Functions
Introduction to Microsoft Flow and Azure FunctionsIntroduction to Microsoft Flow and Azure Functions
Introduction to Microsoft Flow and Azure Functions
 
Cloud Native Day: Cloud-native Anwendungsentwicklung im Jahr 2021
Cloud Native Day: Cloud-native Anwendungsentwicklung im Jahr 2021Cloud Native Day: Cloud-native Anwendungsentwicklung im Jahr 2021
Cloud Native Day: Cloud-native Anwendungsentwicklung im Jahr 2021
 
#SPFestSea azr302 The SharePoint Framework and the #MicrosoftGraph under ster...
#SPFestSea azr302 The SharePoint Framework and the #MicrosoftGraph under ster...#SPFestSea azr302 The SharePoint Framework and the #MicrosoftGraph under ster...
#SPFestSea azr302 The SharePoint Framework and the #MicrosoftGraph under ster...
 
The new Azure App Service Architecture
The new Azure App Service ArchitectureThe new Azure App Service Architecture
The new Azure App Service Architecture
 
A Technology Backgrounder to Serverless Architecture - A Whitepaper by RapidV...
A Technology Backgrounder to Serverless Architecture - A Whitepaper by RapidV...A Technology Backgrounder to Serverless Architecture - A Whitepaper by RapidV...
A Technology Backgrounder to Serverless Architecture - A Whitepaper by RapidV...
 
Cloud integration: what's in it for you? (Toon Vanhoutte & Massimo Crippa at ...
Cloud integration: what's in it for you? (Toon Vanhoutte & Massimo Crippa at ...Cloud integration: what's in it for you? (Toon Vanhoutte & Massimo Crippa at ...
Cloud integration: what's in it for you? (Toon Vanhoutte & Massimo Crippa at ...
 
Building Event-Driven Workflows with Knative and Tekton
Building Event-Driven Workflows with Knative and TektonBuilding Event-Driven Workflows with Knative and Tekton
Building Event-Driven Workflows with Knative and Tekton
 
Het Microsoft Integratie Platform – Welk model past u het beste? (Steef Jan W...
Het Microsoft Integratie Platform – Welk model past u het beste? (Steef Jan W...Het Microsoft Integratie Platform – Welk model past u het beste? (Steef Jan W...
Het Microsoft Integratie Platform – Welk model past u het beste? (Steef Jan W...
 
SPFestDc AZR204 Microsoft Graph and SharePoint Framework under steroids with ...
SPFestDc AZR204 Microsoft Graph and SharePoint Framework under steroids with ...SPFestDc AZR204 Microsoft Graph and SharePoint Framework under steroids with ...
SPFestDc AZR204 Microsoft Graph and SharePoint Framework under steroids with ...
 
What serverless means for enterprise apps
What serverless means for enterprise appsWhat serverless means for enterprise apps
What serverless means for enterprise apps
 
Hybrid integrationwithsap (Glenn Colpaert @ Integration Monday)
Hybrid integrationwithsap (Glenn Colpaert @ Integration Monday)Hybrid integrationwithsap (Glenn Colpaert @ Integration Monday)
Hybrid integrationwithsap (Glenn Colpaert @ Integration Monday)
 
Cloud Computing - What is it?
Cloud Computing - What is it?Cloud Computing - What is it?
Cloud Computing - What is it?
 
Sps toronto introduction to azure functions microsoft flow
Sps toronto introduction to azure functions microsoft flowSps toronto introduction to azure functions microsoft flow
Sps toronto introduction to azure functions microsoft flow
 
Azure App Services.pdf
Azure App Services.pdfAzure App Services.pdf
Azure App Services.pdf
 
RightScale Webinar: Operationalize Your Enterprise AWS Usage Through an IT Ve...
RightScale Webinar: Operationalize Your Enterprise AWS Usage Through an IT Ve...RightScale Webinar: Operationalize Your Enterprise AWS Usage Through an IT Ve...
RightScale Webinar: Operationalize Your Enterprise AWS Usage Through an IT Ve...
 

More from Rick van den Bosch

Configuration in azure done right
Configuration in azure done rightConfiguration in azure done right
Configuration in azure done right
Rick van den Bosch
 
Getting started with Azure Cognitive services
Getting started with Azure Cognitive servicesGetting started with Azure Cognitive services
Getting started with Azure Cognitive services
Rick van den Bosch
 
From .NET Core 3, all the rest will be legacy
From .NET Core 3, all the rest will be legacyFrom .NET Core 3, all the rest will be legacy
From .NET Core 3, all the rest will be legacy
Rick van den Bosch
 
Getting sh*t done with Azure Functions (on AKS!)
Getting sh*t done with Azure Functions (on AKS!)Getting sh*t done with Azure Functions (on AKS!)
Getting sh*t done with Azure Functions (on AKS!)
Rick van den Bosch
 
SAFwAD @ Intelligent Cloud Conference
SAFwAD @ Intelligent Cloud ConferenceSAFwAD @ Intelligent Cloud Conference
SAFwAD @ Intelligent Cloud Conference
Rick van den Bosch
 
Securing an Azure Function REST API with Azure Active Directory
Securing an Azure Function REST API with Azure Active DirectorySecuring an Azure Function REST API with Azure Active Directory
Securing an Azure Function REST API with Azure Active Directory
Rick van den Bosch
 
Azure Lowlands: An intro to Azure Data Lake
Azure Lowlands: An intro to Azure Data LakeAzure Lowlands: An intro to Azure Data Lake
Azure Lowlands: An intro to Azure Data Lake
Rick van den Bosch
 
An intro to Azure Data Lake
An intro to Azure Data LakeAn intro to Azure Data Lake
An intro to Azure Data Lake
Rick van den Bosch
 
.Net Core - not your daddy's dotnet
.Net Core - not your daddy's dotnet.Net Core - not your daddy's dotnet
.Net Core - not your daddy's dotnet
Rick van den Bosch
 
TechDays 2016 - Case Study: Azure + IOT + LoRa = ”Leven is Water”
TechDays 2016 - Case Study: Azure + IOT + LoRa = ”Leven is Water”TechDays 2016 - Case Study: Azure + IOT + LoRa = ”Leven is Water”
TechDays 2016 - Case Study: Azure + IOT + LoRa = ”Leven is Water”
Rick van den Bosch
 
Take control of your deployments with Release Management
Take control of your deployments with Release ManagementTake control of your deployments with Release Management
Take control of your deployments with Release Management
Rick van den Bosch
 

More from Rick van den Bosch (11)

Configuration in azure done right
Configuration in azure done rightConfiguration in azure done right
Configuration in azure done right
 
Getting started with Azure Cognitive services
Getting started with Azure Cognitive servicesGetting started with Azure Cognitive services
Getting started with Azure Cognitive services
 
From .NET Core 3, all the rest will be legacy
From .NET Core 3, all the rest will be legacyFrom .NET Core 3, all the rest will be legacy
From .NET Core 3, all the rest will be legacy
 
Getting sh*t done with Azure Functions (on AKS!)
Getting sh*t done with Azure Functions (on AKS!)Getting sh*t done with Azure Functions (on AKS!)
Getting sh*t done with Azure Functions (on AKS!)
 
SAFwAD @ Intelligent Cloud Conference
SAFwAD @ Intelligent Cloud ConferenceSAFwAD @ Intelligent Cloud Conference
SAFwAD @ Intelligent Cloud Conference
 
Securing an Azure Function REST API with Azure Active Directory
Securing an Azure Function REST API with Azure Active DirectorySecuring an Azure Function REST API with Azure Active Directory
Securing an Azure Function REST API with Azure Active Directory
 
Azure Lowlands: An intro to Azure Data Lake
Azure Lowlands: An intro to Azure Data LakeAzure Lowlands: An intro to Azure Data Lake
Azure Lowlands: An intro to Azure Data Lake
 
An intro to Azure Data Lake
An intro to Azure Data LakeAn intro to Azure Data Lake
An intro to Azure Data Lake
 
.Net Core - not your daddy's dotnet
.Net Core - not your daddy's dotnet.Net Core - not your daddy's dotnet
.Net Core - not your daddy's dotnet
 
TechDays 2016 - Case Study: Azure + IOT + LoRa = ”Leven is Water”
TechDays 2016 - Case Study: Azure + IOT + LoRa = ”Leven is Water”TechDays 2016 - Case Study: Azure + IOT + LoRa = ”Leven is Water”
TechDays 2016 - Case Study: Azure + IOT + LoRa = ”Leven is Water”
 
Take control of your deployments with Release Management
Take control of your deployments with Release ManagementTake control of your deployments with Release Management
Take control of your deployments with Release Management
 

Recently uploaded

Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Łukasz Chruściel
 
How Can Hiring A Mobile App Development Company Help Your Business Grow?
How Can Hiring A Mobile App Development Company Help Your Business Grow?How Can Hiring A Mobile App Development Company Help Your Business Grow?
How Can Hiring A Mobile App Development Company Help Your Business Grow?
ToXSL Technologies
 
Enums On Steroids - let's look at sealed classes !
Enums On Steroids - let's look at sealed classes !Enums On Steroids - let's look at sealed classes !
Enums On Steroids - let's look at sealed classes !
Marcin Chrost
 
一比一原版(USF毕业证)旧金山大学毕业证如何办理
一比一原版(USF毕业证)旧金山大学毕业证如何办理一比一原版(USF毕业证)旧金山大学毕业证如何办理
一比一原版(USF毕业证)旧金山大学毕业证如何办理
dakas1
 
Mobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona InfotechMobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona Infotech
Drona Infotech
 
J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...
J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...
J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...
Bert Jan Schrijver
 
Webinar On-Demand: Using Flutter for Embedded
Webinar On-Demand: Using Flutter for EmbeddedWebinar On-Demand: Using Flutter for Embedded
Webinar On-Demand: Using Flutter for Embedded
ICS
 
Transform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR SolutionsTransform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR Solutions
TheSMSPoint
 
SQL Accounting Software Brochure Malaysia
SQL Accounting Software Brochure MalaysiaSQL Accounting Software Brochure Malaysia
SQL Accounting Software Brochure Malaysia
GohKiangHock
 
8 Best Automated Android App Testing Tool and Framework in 2024.pdf
8 Best Automated Android App Testing Tool and Framework in 2024.pdf8 Best Automated Android App Testing Tool and Framework in 2024.pdf
8 Best Automated Android App Testing Tool and Framework in 2024.pdf
kalichargn70th171
 
Measures in SQL (SIGMOD 2024, Santiago, Chile)
Measures in SQL (SIGMOD 2024, Santiago, Chile)Measures in SQL (SIGMOD 2024, Santiago, Chile)
Measures in SQL (SIGMOD 2024, Santiago, Chile)
Julian Hyde
 
Modelling Up - DDDEurope 2024 - Amsterdam
Modelling Up - DDDEurope 2024 - AmsterdamModelling Up - DDDEurope 2024 - Amsterdam
Modelling Up - DDDEurope 2024 - Amsterdam
Alberto Brandolini
 
Oracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptxOracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptx
Remote DBA Services
 
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CDKuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
rodomar2
 
WWDC 2024 Keynote Review: For CocoaCoders Austin
WWDC 2024 Keynote Review: For CocoaCoders AustinWWDC 2024 Keynote Review: For CocoaCoders Austin
WWDC 2024 Keynote Review: For CocoaCoders Austin
Patrick Weigel
 
在线购买加拿大英属哥伦比亚大学毕业证本科学位证书原版一模一样
在线购买加拿大英属哥伦比亚大学毕业证本科学位证书原版一模一样在线购买加拿大英属哥伦比亚大学毕业证本科学位证书原版一模一样
在线购买加拿大英属哥伦比亚大学毕业证本科学位证书原版一模一样
mz5nrf0n
 
UI5con 2024 - Bring Your Own Design System
UI5con 2024 - Bring Your Own Design SystemUI5con 2024 - Bring Your Own Design System
UI5con 2024 - Bring Your Own Design System
Peter Muessig
 
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian CompaniesE-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
Quickdice ERP
 
Artificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension FunctionsArtificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension Functions
Octavian Nadolu
 
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
XfilesPro
 

Recently uploaded (20)

Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
 
How Can Hiring A Mobile App Development Company Help Your Business Grow?
How Can Hiring A Mobile App Development Company Help Your Business Grow?How Can Hiring A Mobile App Development Company Help Your Business Grow?
How Can Hiring A Mobile App Development Company Help Your Business Grow?
 
Enums On Steroids - let's look at sealed classes !
Enums On Steroids - let's look at sealed classes !Enums On Steroids - let's look at sealed classes !
Enums On Steroids - let's look at sealed classes !
 
一比一原版(USF毕业证)旧金山大学毕业证如何办理
一比一原版(USF毕业证)旧金山大学毕业证如何办理一比一原版(USF毕业证)旧金山大学毕业证如何办理
一比一原版(USF毕业证)旧金山大学毕业证如何办理
 
Mobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona InfotechMobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona Infotech
 
J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...
J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...
J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...
 
Webinar On-Demand: Using Flutter for Embedded
Webinar On-Demand: Using Flutter for EmbeddedWebinar On-Demand: Using Flutter for Embedded
Webinar On-Demand: Using Flutter for Embedded
 
Transform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR SolutionsTransform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR Solutions
 
SQL Accounting Software Brochure Malaysia
SQL Accounting Software Brochure MalaysiaSQL Accounting Software Brochure Malaysia
SQL Accounting Software Brochure Malaysia
 
8 Best Automated Android App Testing Tool and Framework in 2024.pdf
8 Best Automated Android App Testing Tool and Framework in 2024.pdf8 Best Automated Android App Testing Tool and Framework in 2024.pdf
8 Best Automated Android App Testing Tool and Framework in 2024.pdf
 
Measures in SQL (SIGMOD 2024, Santiago, Chile)
Measures in SQL (SIGMOD 2024, Santiago, Chile)Measures in SQL (SIGMOD 2024, Santiago, Chile)
Measures in SQL (SIGMOD 2024, Santiago, Chile)
 
Modelling Up - DDDEurope 2024 - Amsterdam
Modelling Up - DDDEurope 2024 - AmsterdamModelling Up - DDDEurope 2024 - Amsterdam
Modelling Up - DDDEurope 2024 - Amsterdam
 
Oracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptxOracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptx
 
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CDKuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
 
WWDC 2024 Keynote Review: For CocoaCoders Austin
WWDC 2024 Keynote Review: For CocoaCoders AustinWWDC 2024 Keynote Review: For CocoaCoders Austin
WWDC 2024 Keynote Review: For CocoaCoders Austin
 
在线购买加拿大英属哥伦比亚大学毕业证本科学位证书原版一模一样
在线购买加拿大英属哥伦比亚大学毕业证本科学位证书原版一模一样在线购买加拿大英属哥伦比亚大学毕业证本科学位证书原版一模一样
在线购买加拿大英属哥伦比亚大学毕业证本科学位证书原版一模一样
 
UI5con 2024 - Bring Your Own Design System
UI5con 2024 - Bring Your Own Design SystemUI5con 2024 - Bring Your Own Design System
UI5con 2024 - Bring Your Own Design System
 
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian CompaniesE-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
 
Artificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension FunctionsArtificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension Functions
 
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
 

Dude, Where's my Server?

  • 1. © Betabit Nederland B.V. Oscar van Tol o.van.tol@betabit.nl @oscarvantol Rick van den Bosch r.van.den.bosch@betabit.nl @rickvdbosch Dude, Where’s my Server? about Serverless computing
  • 2. © Betabit Nederland B.V. Who’s who? Oscar van Tol Rick van den Bosch
  • 3. © Betabit Nederland B.V. Agenda PART I What is Serverless? Serverless vs. Alternatives NoOps? Benefits & Drawbacks Tools Microsoft Flow demo Azure Logic Apps demo PART II Azure Functions demo Flow, Logic Apps & Functions Function Extensions BONUS: Azure EventGrid Best Practices Conclusion
  • 4. © Betabit Nederland B.V. What is Serverless? Does Serverless mean that there are no servers? Does Serverless mean that there are less servers? Maybe Serverless is not a great name...
  • 5. © Betabit Nederland B.V. I want to go on that ride, Daddy. Source:
  • 6. © Betabit Nederland B.V. About Serverless… “Serverless is not just a fad or buzzword. {…} With serverless, you need only worry about your code and how it is triggered. The platform takes care of the rest.”
  • 7. © Betabit Nederland B.V. Serverless computing defined • Abstraction of servers • Event-driven scale • Micro-billing Focus on apps not servers
  • 8. © Betabit Nederland B.V. Serverless and Serverless • Backend as a Service • Functions as a Service
  • 9. © Betabit Nederland B.V. Backend as a Service • 3rd party applications / services in the cloud to manage server-side logic and state • Applications using them were the first to be called Serverless • Rich client applications (SPA or mobile apps)
  • 10. © Betabit Nederland B.V. (Mobile) Backend as a Service: Example
  • 11. © Betabit Nederland B.V. Function as a Service • Server-side logic written by developer • Run in stateless compute containers • Event-triggered • Short-lived • Fully managed by 3rd party
  • 12. © Betabit Nederland B.V. Functions as a Service: Example
  • 13. © Betabit Nederland B.V. And then… Serverless vs. Alternatives
  • 14. IaaS, PaaS & SaaS IaaS PaaS SaaS MIGRATE to it DEVELOP on it CONSUME it
  • 15. IaaS, PaaS & SaaS & FaaS IaaS PaaS SaaS Containers Serverless
  • 16. © Betabit Nederland B.V. “Most PaaS applications are not geared towards bringing entire applications up and down for every request, whereas ServerLess platforms do exactly this. …”
  • 17. © Betabit Nederland B.V. And then… NoOps?
  • 18. © Betabit Nederland B.V. NoOps? • Serverless might mean ‘No internal SysAdmin’ • But Ops still needed for… • Monitoring • Deployments • Security • And the rest (they normally don’t have time for)
  • 19. © Betabit Nederland B.V. And then… Benefits & Drawbacks
  • 20. © Betabit Nederland B.V. Benefits: Costs • Economy of Scale • BaaS: • Less development • Less infrastructure • Less ops • FaaS: • Only pay for the compute you need
  • 21. © Betabit Nederland B.V. Benefits: Ops • Simpler scaling • Reduced packaging and deployment complexity • Time to market / experimentation
  • 22. © Betabit Nederland B.V. Drawbacks: Inherent • Vendor control • Vendor lock-in • Multitenancy • Security concerns • FaaS == stateless
  • 23. © Betabit Nederland B.V. Drawbacks: Implementation • Execution duration • Testing • Monitoring / Debugging • Lack of tools & experience
  • 24. © Betabit Nederland B.V. And then… Tools
  • 25. © Betabit Nederland B.V. First wave • Many barriers to developer productivity • No debugging support • No local development experience • Monitoring was hard • Serverless became popular despite these downsides
  • 26. © Betabit Nederland B.V. Now • Tooling and local development experience unique among cloud vendors • Azure Functions runtime for local development • Triggering off Azure events (hybrid debugging experience) • Application Insights integration • Live event stream • Runtime metrics • Log custom metrics • Alerts
  • 27. © Betabit Nederland B.V. And then… Microsoft Flow
  • 28. © Betabit Nederland B.V. Flow? “Microsoft Flow is a product to help you set up automated workflows between your favorite apps and services to synchronize files, get notifications, collect data, and more.”
  • 29. © Betabit Nederland B.V. Connectors 150+ and counting Not only Microsoft apps & services http://bit.ly/dwms-flowconn
  • 30. © Betabit Nederland B.V. Flow templates
  • 31. © Betabit Nederland B.V. Microsoft Flow Pricing
  • 32. © Betabit Nederland B.V. Microsoft Flow Let's code! Actually, not really...
  • 33. © Betabit Nederland B.V. And then… Azure Logic Apps
  • 34. © Betabit Nederland B.V. Logic Apps? “Automate the access and use of data across clouds without writing code”
  • 35. © Betabit Nederland B.V. Logic Apps! Out-of-the-box Connect and integrate data B2B and enterprise Connectors from the cloud to on-prem messaging in the cloud Take advantage of Tap into Azure Services BizTalk Server investments
  • 36. © Betabit Nederland B.V. Logic Apps!
  • 37. © Betabit Nederland B.V. Isn’t this just Flow? • Both are configuration-first integration services • Flow is built on top of Logic Apps • Flow is Business oriented, Logic Apps are developer oriented • Logic Apps are a part of Azure Flow empowers any office worker to perform simple integrations without going through developers or IT Logic Apps can enable advanced or mission-critical integrations where enterprise-level DevOps and security practices are required
  • 38. © Betabit Nederland B.V. Flow or Logic Apps?
  • 39. © Betabit Nederland B.V. Example Logic app
  • 40. © Betabit Nederland B.V. Logic Apps Pricing
  • 41. © Betabit Nederland B.V. Azure Logic Apps Let's code! Well, almost...
  • 42. © Betabit Nederland B.V. BREAK
  • 43. © Betabit Nederland B.V. When were Azure Functions first introduced?
  • 44. © Betabit Nederland B.V. And then… Azure Functions
  • 45. © Betabit Nederland B.V. Azure Functions
  • 46. © Betabit Nederland B.V. Azure Functions Manage apps, not infrastructure Develop your way Bind into services
  • 47. © Betabit Nederland B.V. What can you do? • Timer-based processing • Azure service event processing • SaaS event processing • Serverless web application architectures • Serverless mobile back ends • Real-time stream processing • Real-time bot messaging
  • 48. © Betabit Nederland B.V. Triggers
  • 49. © Betabit Nederland B.V. Routing Default: http://<yourapp>.azurewebsites.net/api/<funcname>
  • 50. © Betabit Nederland B.V. Routing Url: http://<yourapp>.azurewebsites.net/api/products/electronics/123
  • 51. © Betabit Nederland B.V. Routing All functions routes are prefixed with api by default Can be changed:
  • 52. © Betabit Nederland B.V. Throttling • maxOutstandingRequests Too many: 429 Too busy • maxConcurrentRequests Default: unbound • dynamicThrottlesEnabled Checks system performance counters Default: false > 80%: 429 Too busy
  • 53. © Betabit Nederland B.V. Limitations The default timeout for Functions on a Consumption Plan is 5 minutes Can be increased to 10 minutes
  • 54. © Betabit Nederland B.V. Scaling
  • 55. © Betabit Nederland B.V. Dual abstraction Serverless abstracts away the compute Bindings abstract away the services you interact with
  • 56. © Betabit Nederland B.V. Functions Pricing
  • 57. © Betabit Nederland B.V. Billing example - Resources
  • 58. © Betabit Nederland B.V. Billing example - Executions
  • 59. © Betabit Nederland B.V. And then… Let's code! Finally some real code!
  • 60. © Betabit Nederland B.V. And then… Flow, Logic Apps & Functions
  • 61. © Betabit Nederland B.V. When do I choose what? • For simple business optimization, use Flow • More advanced integration, DevOps need or security compliance, use Logic Apps • Highly custom transformation or specialized code, use Functions.
  • 62. © Betabit Nederland B.V. Putting it all together You can… • … call a logic app in a flow • … call a function in a logic app • … call a logic app in a function “Integration continues to improve. Any investment you make in these three technologies is worthwhile.”
  • 63. © Betabit Nederland B.V. And then… Function Extensions
  • 64. © Betabit Nederland B.V. Functions Extensions Durable Functions http://bit.ly/dwms-durable • Function Chaining • Fan-out/Fan-in • Stateful Singleton • Human Interaction & Timeouts
  • 65. © Betabit Nederland B.V. And then… Azure EventGrid
  • 66. © Betabit Nederland B.V. Event Grid? Simplify event consumption Build reliable cloud apps Focus on product innovation
  • 67. © Betabit Nederland B.V. What is EventGrid? • Fully managed • Intelligent • Event routing Allows for uniform event consumption using a publish-subscribe model Enables you to react to relevant events across both Azure and non-Azure services in near-real time fashion. Allows you to easily build applications with event-based architectures
  • 68. © Betabit Nederland B.V. Concepts • Events • Event sources/publishers • Topics • Event subscriptions • Event handlers What? Where? For who? Where to? Handle it!
  • 69. © Betabit Nederland B.V. Concepts
  • 70. © Betabit Nederland B.V. Reacting to Blob Storage events Azure CLI az provider register --namespace Microsoft.EventGrid az feature register --name storageEventSubscriptions --namespace Microsoft.EventGrid Subscriptions are added to the Preview Program as capacity is available.
  • 71. © Betabit Nederland B.V. Example uses Serverless application architectures Ops automation Application integration
  • 72. © Betabit Nederland B.V. And then… Functions Best Practices
  • 73. © Betabit Nederland B.V. Best practices - Avoid long running Functions - Cross Function communication - Call - Queue - Storage - ? - Functions should be Stateless (and Idempotent) - Create defensive Functions - Don’t mix test and production code in the same Functions app - Use async code but avoid blocking calls - Keep Functions small & fast
  • 74. © Betabit Nederland B.V. And then…
  • 75. © Betabit Nederland B.V. Conclusion • Still in the early stages • Push better architecture (micro-services!) • Reduce time-to-market
  • 76. © Betabit Nederland B.V. Resources & links Azure Functions Documentation http://bit.ly/dwms-azfunc Twitter @oscarvantol @rickvdbosch Blog Oscar van Tol Rick van den Bosch
  • 77. © Betabit Nederland B.V. Shameless Plug Microsoft TechDays 2017 12 & 13 october RAI Amsterdam Friday October 13th -->
  • 78. Bedankt voor je aandacht © Betabit Nederland B.V.

Editor's Notes

  1. https://trends.google.com/trends/explore?date=today%205-y&q=serverless
  2. ServerLess is The Next Layer of Abstraction in Cloud Computing
  3. Fully managed, no explicit reserve instances Triggers: timers, HTTP, queues and much more. A function contains both code and metadata about triggers and bindings. With serverless, you pay only when your code is executing.
  4. AWS Lambda Google Cloud Functions Azure Functions
  5. Speciale vermelding voor Serverless
  6. Datacenter: hardware as unit of scale IaaS: OS as unit of scale PaaS: Application as unit of scale Serverless: Function as unit of scale
  7. You can start with a flow at first, then convert it to a logic app as needed.
  8. Images: Timer based Serverless web Real-time bot
  9. Note that these settings apply to each Function App instance not globally. These settings need to go inside an "http" section
  10. Focus on adding business value
  11. Functions can also be hosted on an App Service Plan. Then they use the spare compute of the plan.
  12. Durable Functions is an Azure Functions extension for building long-running, stateful function orchestrations in code using C# in a serverless environment. calling one function after another, and may or may not involve passing state between them. how to write an orchestrator function that calls multiple functions concurrently and then performs some aggregation on the results. long-running (potentially eternal) orchestrator functions which store state and can be invoked and queried by other functions in your application able to send notifications to the person, receive responses back asynchronously from the person, and account for the person being unavailable.
  13. Events - What happened. Event sources/publishers - Where the event took place. Topics - The endpoint where publishers send events. Event subscriptions - The endpoint or built-in mechanism to route events, sometimes to multiple handlers. Subscriptions are also used by handlers to intelligently filter incoming events. Event handlers - The app or service reacting to the event.
  14. az login az account list az account set --subscription xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx az feature show --name storageEventSubscriptions --namespace Microsoft.EventGrid
  15. Oscar
  16. Storage queue max 64 KB, Service Bus max 256 KB Idempotent esp. with timer triggers -> should be able to run any time of day with the same result Don’t mix -> resource sharing! Always avoid referencing the Result property or calling Wait method on a Task instance. This approach can lead to thread exhaustion