Slide 1

Slide 1 text

Azure Serverless 101 Kosala Nuwan Perera. (2020, Feb 10). Running the Cocktail Bar in Azure

Slide 2

Slide 2 text

Questions to Ask Running the Cocktail Bar in Azure • How much control do I need? • Where do I need my apps to run? • What usage model do I need? • Which functionality do I need?

Slide 3

Slide 3 text

How much control do I need? Control and Responsibility Working on business value IaaS PaaS Serverless SaaS • App con fi guration • Application • Server con fi guration • Operating system • Anti-virus • Network • App con fi guration • Application • Server con fi guration • App con fi guration • Application • App con fi guration

Slide 4

Slide 4 text

Where do I need my apps to run? In Azure • Azure Public Cloud Somewhere else • On-prem • Local development computer • Other clouds

Slide 5

Slide 5 text

What usage model do I need? Consumer Classic model • Always On • Pay per month All the time Occasionally Serverless model • Runs when needed • Pay per execution

Slide 6

Slide 6 text

Azure Services Expectations from Azure • I trust Azure to scale for me • I needs to run in Azure • I needs to run as and when needed

Slide 7

Slide 7 text

Azure Services Running the Cocktail Bar in Azure Control and Responsibility Working on business value • VM • Container Instances • Container Services (AKS) • Web App for Containers • Batch • Service Fabric • Cloud Services • Mobile App • Web App • Service Fabric • Functions • Logic Apps IaaS PaaS Serverless

Slide 8

Slide 8 text

Azure Services Run anywhere or stay vendor agnostic Control and Responsibility Working on business value • VM • Container Instances • Container Services (AKS) • Web App for Containers • Batch • Service Fabric • Cloud Services • Mobile App • Web App • Service Fabric • Functions • Logic Apps IaaS PaaS Serverless

Slide 9

Slide 9 text

Azure Services Run as and when needed Control and Responsibility Working on business value • VM • Container Instances • Container Services (AKS) • Web App for Containers • Batch • Service Fabric • Cloud Services • Mobile App • Web App • Service Fabric • Functions • Logic Apps IaaS PaaS Serverless

Slide 10

Slide 10 text

Serverless Backend Azure Services for task-oriented operations

Slide 11

Slide 11 text

Serverless Backend Typical serverless azure architecture External or Internal Client Apps Mobile and Web Enterprise Backend Http Endpoint External Webhooks Http Endpoint Backend API Route API Manager 1 2 Request 4 3 Data

Slide 12

Slide 12 text

External or Internal Securing the Backend Enterprise Backend Http Endpoint External Webhooks Http Endpoint Backend API Secrets Route API Manager 1 4 5 3 2 AD Request: Bearer ... Data Client Apps Mobile and Web

Slide 13

Slide 13 text

External or Internal Caching for faster response Enterprise Backend Http Endpoint External Webhooks Http Endpoint Backend API Secrets Route Redis Cache API Manager Edge Cache Data 1 2 3 4 5 AD Request: Bearer ... 6 Client Apps Mobile and Web

Slide 14

Slide 14 text

External or Internal Broadcasting state changes Enterprise Backend Http Endpoint External Webhooks Http Endpoint Backend API Secrets Route Redis Cache API Manager Edge Cache Data 1 2 3 4 5 AD Request: Bearer ... 6 Broadcast Client Apps Mobile and Web

Slide 15

Slide 15 text

Serverless Webhooks Broadcasting updates as and when it happen

Slide 16

Slide 16 text

External or Internal Mobile Backend Http Endpoint Enterprise Backend Http Endpoint App Service Http Endpoint 3 4 Serverless Webhooks Observer to broadcast 1 2 Broadcast Publisher API Manager Secrets Monitor Topic Push Message Broker Subscriptions

Slide 17

Slide 17 text

External or Internal Mobile Backend Http Endpoint Enterprise Backend Http Endpoint App Service Http Endpoint 3 4 Pull Serverless Webhooks Message broker to broadcast 1 2 Broadcast Message Broker Publisher API Manager Secrets Monitor Topic Subscriptions

Slide 18

Slide 18 text

External or Internal Orchestrating the broadcast Mobile Backend Http Endpoint Enterprise Backend Http Endpoint App Service Http Endpoint 1 Push Dispatch Publisher Orchestrate API Manager Secrets Monitor Topic Message Broker 2 3 Subscriptions

Slide 19

Slide 19 text

External or Internal Decoupling the subscribers Subscriptions Mobile Backend Http Endpoint Enterprise Backend Http Endpoint App Service Http Endpoint Push Dispatch Publisher Orchestrate API Manager Secrets Monitor Topic Message Broker 3 2 Subscriptions 1

Slide 20

Slide 20 text

External or Internal Separating and grouping Webhooks Topics • Bar • Cocktails • Orders Events • Order.Received • Order.Completed • Order.Cancelled • Cocktail.Introduced • Cocktail.Discontinued • Cocktail.Refreshed • Bar.Opened • Bar.HappyHourStarting • Bar.HappyHourStarted • Bar.HappyHourEnding • Bar.HappyHourEnded • Bar.Closed Mobile Backend Http Endpoint Enterprise Backend Http Endpoint App Service Http Endpoint 1 2 Broadcast Secrets Subscriptions

Slide 21

Slide 21 text

External or Internal Subscribing to a Topic Mobile Backend Http Endpoint Enterprise Backend Http Endpoint App Service Http Endpoint 1 2 Broadcast Secrets Subscriptions Subscriptions • Application Key • Access Token • Event • Http Endpoint • Expiration

Slide 22

Slide 22 text

Running the Cocktail Bar in Azure It's actually me
 @kosalanuwan Ask me anything about .NET, Javascript, GitHub, and all things OSS, Clean Code and Clean Architecture, BUT NOT Java or Machine Learning. Azure Serverless 101