Download presentation
Presentation is loading. Please wait.
1
Tulika Chaudharie / Harikharan Krishnaraju
Escalation Engineer, Microsoft Using Azure Functions for Integration
2
What is Azure App Service?
3
Digital Global Presence
Custom Apps eCommerce Digital Global Presence LOB API / Services / ISV Apps APIM Logic Apps Mobile Apps Notification Hubs Azure Functions API Apps Web Apps Services App Service Developer Experience Languages and Frameworks Superior DevOps Self service supportability Fully Managed Platform Auto scale OS and Framework patching Load balancing Enterprise Grade Enterprise grade SLA Security and Compliance On-Premise Connectivity Platform
4
Demo: Azure WebJob
5
BAM!!! Azure Functions Process events with Serverless code. Azure
Make composing Cloud Apps insanely easy Develop Functions in C#, Node.js, F#, Python, PHP, Batch and more Easily schedule event-driven tasks across services Expose Functions as HTTP API endpoints Scale Functions based on customer demand Easily integrate with Logic Apps BAM!!! Azure Functions Code Events + data
6
Azure Functions architecture Built on top of App Service and WebJobs SDK
App Service Dynamic Runtime Hosting, CI, Deployment Slots, Remote Debugging, etc. WebJobs Core Programming model, common abstractions WebJobs Extensions Triggers, input and output bindings WebJobs Script Runtime Azure Functions Host – Dynamic Compilation, Language abstractions, etc. Code Config Language Runtime C#, Node.js, F#, PHP, etc.
7
Dual abstraction Serverless compute abstracts away the compute
Bindings abstract away the services you interact with Other Services Business Logic Serverless PaaS
8
Platform and scaling App Service offers dedicated and dynamic tiers.
Dedicated is the existing App Service plan tiers Basic, Standard, Premium Pay based on # of reserved VMs You’re responsible for scale Dynamic Pay on number of executions Platform responsible for scale
9
Dynamic Tier Pricing Pay per execution model - two meters, three units
Number of executions Duration of execution x reserved memory
10
Demo: Function – Getting Started
11
What is the “Functions” programming model?
Function as the unit of work Functions are executed; they start and finish Functions have inputs and outputs
12
Best practices for the “Functions” model
Functions should “do one thing” Functions should be idempotent Functions should finish as quickly as possible 1
13
Functions programming concepts
Trigger Input Output Code
14
Demo: Storage Queue Trigger
15
WebJobs SDK vs Azure Functions
Generalizing WebJobs SDK == more freedom -> more work Azure Functions == less responsibilities -> less work Commonalities Programming model differences Hosting model differences
16
Commonalities Both use the ”Function” oriented programming model
Both support ”bindings” for trigger/input/output Both support WebJobs SDK extensions model Both support external libraries being used Both can run locally and be debugged Both have runtime telemetry via the WebJobs Dashboard
17
Programming Model Differences
WebJobs SDK C# only Attributes for configuring bindings Traditional .NET developer experience (Visual Studio, NuGet, MSBuild) Many functions per class Can access and manipulate many core SDK features Can’t listen for HTTP requests* Azure Functions C# & Node.js + more Config files for configuring bindings More diverse development experience (Web portal, VSCode, dynamically builds itself) Limited access to manipulate core SDK features, but (C# only) still some access Supports HTTP!
18
Hosting Model Differences
WebJobs SDK You configure host Build a console app which is run WebJobs and Dedicated App Service plans Runs the service in the background of Web/Mobile/API app Runs any console app (not just SDK based ones) You manage scale Azure Functions Limited control over the host Just give it your code/config Function App + Dynamic App Service Plans Function app owns the whole host, including web frontend. Only runs Azure Functions stuff – no other things Scale is managed for you
19
Demo: Integration with Logic Apps
20
Questions?
21
Thank You!
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.