O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.

Serverless APIs, the Good, the Bad and the Ugly (2019-09-19)

302 visualizações

Publicada em

Presented at API Days Melbourne, 2019 on 2019-09-19

Publicada em: Tecnologia
  • Seja o primeiro a comentar

Serverless APIs, the Good, the Bad and the Ugly (2019-09-19)

  1. 1. @pacodelacruz Paco de la Cruz Deloitte Platform Engineering Serverless APIs The Good, the Bad and the Ugly @pacodelacruz API days 2019 : Melbourne
  2. 2. @pacodelacruz @pacodelacruz linkedin.com/in/pacodelacruz pacodelacruz.io slideshare.net/pacodelac/presentations github.com/pacodelacruz
  3. 3. @pacodelacruz What’s Serverless Main Players Use Cases The Good, the Bad, and the Ugly Demos Key Takeaways Q & A Agenda
  4. 4. @pacodelacruz What is Serverless?
  5. 5. @pacodelacruz Cloud Compute Spectrum
  6. 6. @pacodelacruz Cloud Compute Spectrum
  7. 7. @pacodelacruz Cloud Compute Spectrum
  8. 8. @pacodelacruz We Won’t Cover Today Serverless Containers / CaaS FaaS on K8s / Container Orchestrators
  9. 9. @pacodelacruz Serverless Compute and its Benefits Server abstraction Focus on value Load balancing & High availability built-in
  10. 10. @pacodelacruz Serverless Compute and its Benefits Pay only for what you use Server abstraction Focus on value Event-driven scaling not resource-driven Load balancing & High availability built-in
  11. 11. @pacodelacruz Serverless FaaS in a Nutshell Event Triggers Code Outputs React and get inputs from http request and services Code Send results to different services / protocols
  12. 12. @pacodelacruz Serverless FaaS – Main Players AWS Lambda Azure Functions Google Cloud Functions
  13. 13. @pacodelacruz Language Support Java 8 Go 1.x PowerShell Node.js 8.10 & 10 C# (.NET Core 1.0, 2.1) Python 2.7, 3.6, 3.7 Ruby code 2.5 Runtime API (extend) C# Node.js 8 & 10 F# Java 8 Python 3.6 PowerShell (Preview) Typescript Node.js 8 & 10 Python 3.7 Go 1.11
  14. 14. @pacodelacruz Triggers (not an exhaustive list) Sync Http API / Webhooks, Alexa, Kinesis, Lex, etc. Async S3, SNS, SES, CloudWatch, CodeCommit, etc. Sync Http API / Webhooks Async Event Grid, Blob, Cosmos DB, Event Hubs, Queue Storage, Service Bus, Timer, Graph Events Sync Http API / Webhooks Async Cloud Storage, Cloud Pub/Sub, Firebase, Stackdriver Logging
  15. 15. @pacodelacruz Use Cases APIs for SPAs APIs for Web Apps Mobile App Back Ends IoT Back Ends Integration Pub/Sub Services Event Stream Processing Data Processing MapReduce IT and Ops Automation CRON Jobs Chatbots
  16. 16. @pacodelacruz Speed-to-Market Focus on Business Value (Devs & Ops) Cost (with Sporadic Loads) Event-Based Scaling (Ideal for Bursty Loads) Tooling, Local Dev & Portable Runtime Event Triggers (More than just Http) The Good
  17. 17. @pacodelacruz Vendor Lock-in Limited Programming Languages Opinionated Programming Models Timeouts Still Maturing Constant Changes The Bad
  18. 18. @pacodelacruz Cold Starts The Ugly Server Allocation Function Deployment Loaded into Memory Code Execution
  19. 19. @pacodelacruz Cold Starts *, ** The Ugly Server Allocation Function Deployment Loaded into Memory Code Execution * Only impacts interactive sync requests ** There are some mitigation strategies
  20. 20. @pacodelacruz Sync & Low Latency Constant Load Portability Full-Control of Infrastructure Language Lack of Support Limitations of Programming Model Sync & Low Latency Workloads Constant Load Portability Full-Control of Infrastructure Language Lack-of-Support Limitations of Programming Models When Not to Use Serverless
  21. 21. @pacodelacruz Let’s have some fun!
  22. 22. @pacodelacruz Quick Introduction to Azure Functions Programming Models (Bindings) Development and Monitoring Tooling Demo 1 github.com/pacodelacruz/ serverless-intro-azure-functions
  23. 23. @pacodelacruz Building a Serverless Request Bin Memory cache across instances Strategy to mitigate cold-starts Dependency Injection Deployment to Azure Demo 2 github.com/pacodelacruz/ serverless-request-bin-azure-functions
  24. 24. @pacodelacruz Productivity (Prog. Models, Devs & Ops Tools) Ideal for Bursty or Async Short-lived Loads Specific Use Cases (More than just Http) Enterprise-Grade for Certain Scenarios Evolving Rapidly, Still Maturing Know the Capabilities of your Cloud Provider Key Takeaways
  25. 25. @pacodelacruz Q & A
  26. 26. @pacodelacruz :)
  27. 27. @pacodelacruz @pacodelacruz linkedin.com/in/pacodelacruz pacodelacruz.io slideshare.net/pacodelac/presentations github.com/pacodelacruz

×