Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Going Serverless with Microsoft Azure

Going Serverless with Microsoft Azure

There's an industry buzz around Serverless architectures and for good reason! Serverless computing allows us to build apps faster without worrying about infrastructure.

In this talk, we look at:

* The benefits of serverless for companies and developers
* When to choose serverless over other options
* How to build serverless apps in Azure (it's not just Functions!)

Matt Burrell

May 04, 2018
Tweet

Other Decks in Technology

Transcript

  1. Matt Burrell • Developer / Solution Architect • www.mattburrell.net •

    [email protected] • Working towards MCSE: Cloud Platform and Infrastructure • Spencer: www.spencer.education App Service Cosmos DB Azure SQL Traffic Manager Function
  2. Benefits Faster Time to Market Reduced Costs Focus on Business

    Logic Developer Productivity Serverless
  3. Drawbacks • Cold starts • Less control • Resource limits

    • Vendor lock-in • Multi-tenancy But… Can architect around most of these!
  4. Traditional stack Web Server Services Database Server Serverless stack API

    Gateway Functions-as-a- Service Database-as-a- Service
  5. Azure Functions Tips • Write single-purpose, stateless functions • Use

    within push-based, event-driven architecture • Use SaaS connectors where possible • Prefer NoSQL databases to persist state • Don’t use if you need WebSockets (e.g. SignalR, bots)
  6. Azure Functions Tips • Delegate long-running tasks (durable functions/queues) •

    Document APIs using OpenAPI (Swagger Specification) • Secure http communications between functions • Identify performance bottlenecks
  7. Durable Functions • Lets you write stateful, reliable functions •

    Extension – manages state, checkpoints, restarts • Assists with orchestrated workflows
  8. Use Cases Single Page Applications SaaS Integration Scheduled Tasks CQRS

    IoT Mobile backends Gaming Blockchain Prototyping MVPs N anoservices Batch processing Event streaming Analytics Image manipulation Video processing AI Hybrid cloud CI/CD
  9. Azure Function Proxies • Light API gateway (without throttling, transforms,

    developer portal) • Unified end-point – break large APIs into multiple function apps (c.f. microservices) • Mocking APIs –unblock mobile dev teams
  10. Durable Functions Logic Apps Development Code-first (imperative) Designer-first (declarative) Connectivity

    About a dozen built-in binding types, write code for custom bindings Large collection of connectors, Enterprise Integration Pack for B2B scenarios, build custom connectors Actions Each activity is an Azure function; write code for activity functions Large collection of ready-made actions Monitoring Azure Application Insights Azure portal, Operations Management Suite, Log Analytics Management REST API, Visual Studio Azure portal, REST API, PowerShell, Visual Studio Execution context Can run locally or in the cloud. Runs only in the cloud.