Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Azure Functions - Get rid of your servers, use functions!

Cloud Native Night November 2016, Munich: Talk by Manuela Rink (Technical Evengelist at Microsoft).

Join our Meetup: www.meetup.com/cloud-native-muc

Abstract: Not so long ago we had our own servers in the basement for our backend systems. With the birth of various cloud providers like Microsoft Azure and Amazon Web Services our own iron soon was gone and we started to host our systems on virtual servers in big datacenters around the world. By doing this we cut down maintenance time and gained freedom for a (nearly) free choice of hosting worldwide. We transferred our systems on a physical level. Now we are able to take this process a step further and cut down our systems on a functional level: by hosting logic in... functions!
This talk gives a first insight und oversight of Azure Functions - how they work, what you can do with them and how your system can benefit from a „slim down your system“ idea like this.

  • Be the first to comment

  • Be the first to like this

Azure Functions - Get rid of your servers, use functions!

  1. 1. Get rid of your servers! Use functions☁ + </> = 👊 Manuela Rink Technical Evangelist @
  2. 2. #0 The Theoretical Part* *no excuses – first part needs to be theory!
  3. 3. Transformation from own “iron” to cloud VMs
  4. 4. Transformation from VMs to microservices / functions
  5. 5. We’ve come a long long way togetherThe cloud evolution
  6. 6. Serverless or Jeff* or “just the next pig which is chased through the village?” * Serverless is just a name, Paul Johnston
  7. 7. “[…] is a cloud computing code execution model in which the cloud provider fully manages starting and stopping virtual machines as necessary to serve requests, and requests are billed by an abstract measure of the resources required to satisfy the request, rather than per virtual machine, per hour.” -- Wikipedia https://en.wikipedia.org/wiki/Serverless_computing
  8. 8. “Quick and easy run pieces of code* in the cloud, without worrying about infrastructure or maintenance.” -- Manu Rink, 2016 *of various size
  9. 9. AWS Lambda GA since April 2015 Azure Functions GA since November 2016
  10. 10. #1 Functions!!!11eleven *not long until the demos, I swear!
  11. 11. Inspired by Matthew Henderson @ Microsoft
  12. 12. “Function App” is a group of functions Inspired by Matthew Henderson @ Microsoft
  13. 13. Inherit from / Build on top of App Services Full control of dependencies and connectors Choose your fav language and coding environment Powerful integration of you existing Azure apps Choose from a wide variety of triggers Open sourced
  14. 14. App Service Features and Capabilities Enterprise Grade Apps Designed for secure mission-critical applications Fully Managed Platform Optimized for Availability and Automatic scale High Productivity Development Agility through Continuous Deployment Hybrid Connections / VPN / VLAN Scheduled Backup Azure Active Directory Integration Site Resiliency, HA, and DR Web Jobs Role Base Access Control Audit / Compliance Enterprise Migration Client Certs Cache IP Restrictions/ SSL Web Sockets SQL, MySQL, DocDB, & Mongo Sticky Sessions Authorization/ Authentication Automated Deployment AutoScale Built-in Load Balancing Worldwide Datacenter Coverage End Point Monitoring & Alerts App Gallery DR Site Support WildCard Support Dedicated IP address HTTP Compression CDN Support for Websites Premium WordPress App Services Environments Remote Debugging w/ Visual Studio Site Staging Slots Testing in Production Continuous Integration/Deployment Git, Visual Studio Online and GitHub App & Site Diagnostics OS & Framework Patching Site Extensions Gallery NET, PHP, Python, Node, Java Framework Installer Browser-based editing Auto-Healing Logging and Auditing Admin-Site Support Site Extension Inspired by Matthew Henderson @ Microsoft
  15. 15. Templates • Azure Internal Service Triggers • Blob • EventHub • Storage Queue • Service Bus Queue • Service Bus Topic • Generic Triggers • Generic WebHook • GitHub WebHook • Http • Timer Languages • Core • C# • JS/Node • Experimental • PowerShell • Python • PHP • F# • Bash
  16. 16. #2 Building the real stuff*! … in 3 stages *finally!
  17. 17. Yeaaah, but what can I build with ’em?
  18. 18. Scenario 0 The Easy Cake use HTTP trigger to provide HTTP endpoints to build an “Is the cake a lie?” service
  19. 19. Scenario 0 – Easy cake! – Simple HTTP endpoint
  20. 20. Y A X B Easy Cake LIVE DEMO
  21. 21. Scenario 1 Connect all the things! use web hooks for wiring up heterogeneous services to connect Slack with your mobile backend
  22. 22. Scenario 1 - Connect all the things! – Slack & mobile backend The Serverless Connector - Use Functions to write Slack posts in your mobile backend
  23. 23. Y A X B Connect all the things! LIVE DEMO
  24. 24. Scenario 2 Like a pro! use Blob Trigger to let function react on storage I/O of other function to build an image resizing service
  25. 25. Scenario 2 - Like a pro! – Image Resizing Service
  26. 26. Scenario 2 - Like a pro! – Image Resizing Service
  27. 27. https://github.com/codePrincess/resizingService Scenario 2 - Like a pro! – Image Resizing Service
  28. 28. Y A X B Like a pro! LIVE DEMO
  29. 29. #3 a Penny saved is a penny goT* *’nuff said!
  30. 30. Cool stuff so far … and the costs?
  31. 31. It’s free* *for the 1 million executions and the first 400.000 GB/s
  32. 32. Function executes 2.000.000 times with a duration of 1 second using 1536MB RAM Resource consumption costs 2 million exec * 1 second = 2 million seconds 1536 MB / 1024 MB = 1.5 GB 1.5 GB * 2 million seconds = 3 million GBs 3 million GBs – 400000 GBs = 2.6 million GBs 2.6 million GBs * 0.000016 $/GBs = 41.60 $ Execution costs 2 million exec - 1 million exec = 1 million exec 1 million exec * 0.20$ = 0.20$ 41.60$ + 0.20$ = 41.80$ Pricing OverviewPricing Calculator Same example – just with 128MB RAM 0 $ + 0.20$ = 0.20$ Resource consumption costs 2 million exec * 1 second = 2 million seconds 128 MB / 1024 MB = 0.125 GB 0.125 GB * 2 million seconds = 0.25 million GBs 0.25 million GBs – 400000 GBs = 0 GBs 0 million GBs * 0.000016 $/GBs = 0 $ Execution costs 2 million exec - 1 million exec = 1 million exec 1 million exec * 0.20$ = 0.20$
  33. 33. #4 ... This is the end!
  34. 34. 😻 Easy to build & deploy Various languages supported Lot of triggers available Inter-connectable in- & outside of Azure Cost effective
  35. 35. Merci :) Manu Rink Technical Evangelist marink@microsoft.com @codeprincess says

    Be the first to comment

    Login to see the comments

Cloud Native Night November 2016, Munich: Talk by Manuela Rink (Technical Evengelist at Microsoft). Join our Meetup: www.meetup.com/cloud-native-muc Abstract: Not so long ago we had our own servers in the basement for our backend systems. With the birth of various cloud providers like Microsoft Azure and Amazon Web Services our own iron soon was gone and we started to host our systems on virtual servers in big datacenters around the world. By doing this we cut down maintenance time and gained freedom for a (nearly) free choice of hosting worldwide. We transferred our systems on a physical level. Now we are able to take this process a step further and cut down our systems on a functional level: by hosting logic in... functions! This talk gives a first insight und oversight of Azure Functions - how they work, what you can do with them and how your system can benefit from a „slim down your system“ idea like this.

Views

Total views

727

On Slideshare

0

From embeds

0

Number of embeds

0

Actions

Downloads

3

Shares

0

Comments

0

Likes

0

×