Serverless Architecture in the Cloud

Slides:



Advertisements
Similar presentations
Website s Azure Websites is an enterprise class cloud solution for developing, testing and running web apps. Azure Websites allows you to focus on what.
Advertisements

How* to Win the #BestMicrosoftHack Shahed Chowdhuri Sr. Technical WakeUpAndCode.com *Hint: Use the Cloud.
Inspirirani ljudima. Ugasite mobitele. Hvala.. Paolo Pialorsi Senior Consultant PiaSys ( Publishing apps for SharePoint 2013 on Microsoft.
Microsoft Build /9/2017 5:00 AM © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY,
11/19/2017 9:41 PM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
12/29/2017 3:36 AM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
1/27/2018 5:13 AM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
Run Azure Services in your datacenter
4/24/ :07 PM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
Scalable Web Apps Target this solution to brand leaders responsible for customer engagement and roll-out of global marketing campaigns. Implement scenarios.
A day in the life of an Azure serverless developer
Gain visibility into your apps with Azure Application Insights
Tulika Chaudharie / Harikharan Krishnaraju
Data-driven serverless apps with Azure functions
Working With Azure Batch AI
Developing Hybrid Apps on Microsoft Azure Stack
Introducing Azure Functions
Bill Wilder, CTO, Finomial Corporation
Developing apps for the Internet of Things
Jeff Hollan / Kevin Lam Program Manager / Principal Program Manager- Microsoft Bringing Logic Apps into DevOps with Visual Studio and monitoring.
Azure Functions and Automation: The SQL Agent in the Cloud
Logo here Module 3 Microsoft Azure Web App. Logo here Module Overview Introduction to App Service Overview of Web Apps Hosting Web Applications in Azure.
Building Innovative Apps using the Microsoft Developer Platform
Overview of the Microsoft Azure serverless platform
Microsoft Azure P wer Lunch
Serverless Architecture in Azure
Scalable Web Apps Target this solution to brand leaders responsible for customer engagement and roll-out of global marketing campaigns. Implement scenarios.
Microsoft Azure Service Fabric Overview
Exploring Azure Event Grid
Eduardo Laureano Azure Functions – Serverless compute in the cloud
Microsoft Azure P wer Lunch
Jeff Hollan Azure Functions – Serverless compute in the cloud
Azure Infrastructure as a Service
Monitor your Microservices with Application Insights
Microsoft Ignite NZ October 2016 SKYCITY, Auckland.
9/20/ :55 PM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
Microsoft Ignite NZ October 2016 SKYCITY, Auckland.
Microsoft Ignite NZ October 2016 SKYCITY, Auckland
Continuous Delivery for Microsoft Azure
Microsoft Ignite NZ October 2016 SKYCITY, Auckland.
Microsoft Build /16/2018 8:43 AM © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY,
Microsoft Connect /17/ :34 AM
Microsoft Build /21/2018 1:00 AM © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY,
Azure Event Grid with Custom Events
Developing for the cloud with Visual Studio
12/5/ :36 AM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
12/7/2018 2:05 AM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
Modern cloud PaaS for mobile apps, web sites, API's and business logic apps
12/8/ :07 AM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
Learn. Imagine. Build. .NET Conf
12/26/2018 1:44 AM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
Microsoft Ignite NZ October 2016 SKYCITY, Auckland.
Jeff Hollan / Kevin Lam Program Manager / Principal Program Manager- Microsoft Bringing Logic Apps into DevOps with Visual Studio and monitoring.
1/3/2019 9:40 AM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS.
Jeff Hollan / Derek Li Program Manager – Microsoft
Technical Capabilities
2/19/2019 9:06 AM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
Microsoft Connect /25/2019 1:20 PM
Kevin Lam & Derek Li Introduction To Logic Apps
Azure Mobile Services in the Cloud
From Development to Production: Optimizing for Continuous Delivery
5 Azure Services Every .NET Developer Needs to Know
Windows Azure Hybrid Architectures and Patterns
ETL Patterns in the Cloud with Azure Data Factory
Productive + Hybrid + Intelligent + Trusted
Eldert Grootenboer Cloud Architecture Recipes For The Enterprise
Alex Karcher 5 tips for production ready Azure Functions
Deploy Python to the cloud faster with Azure Serverless
Presentation transcript:

Serverless Architecture in the Cloud Azure Functions Serverless Architecture in the Cloud Shahed Chowdhuri Microsoft Corporation @shahedC WakeUpAndCode.com

Intro Introduction

What’s with the Cloud? Hosting models On Premises Infrastructure (as a Service) Platform (as a Service) Software (as a Service) Applications Applications You manage Applications Applications You scale, make resilient & manage You scale, make resilient and manage Data Data Data Data Runtime Runtime Runtime Runtime Scale, resilience and management by vendor Middleware Middleware Middleware Middleware Scale, resilience and management by vendor O/S O/S O/S O/S Virtualization Virtualization Managed by vendor Virtualization Virtualization Servers Servers Servers Servers Storage Storage Storage Storage Networking Networking Networking Networking

Where does Serverless fit in? Infrastructure (as a Service) Platform (as a Service) Serverless On Premises You manage Software (as a Service) Storage Servers Networking O/S Middleware Virtualization Applications Runtime Data Scale, resilience and management by vendor Functions Functions Functions Functions Applications Applications You manage Applications Applications You scale, make resilient & manage You scale, make resilient and manage Data Data Data Data Runtime Runtime Runtime Scale, resilience and mgmt by vendor Runtime Middleware Middleware Middleware Middleware O/S O/S O/S O/S Virtualization Virtualization Managed by vendor Virtualization Virtualization Servers Servers Servers Servers Storage Storage Storage Storage Networking Networking Networking Networking

Azure Functions Events Code Outputs 2/16/2019 10:07 AM Azure Functions Events React to timers, HTTP, or events from your favorite Azure services, with more on the way Author functions in C#, F#, Node.JS, Java, and more Code Outputs Send results to an ever- growing collection of services Originally presented at Ignite 2018 by: Fabio Cavalcante Eduardo Laureano Source: https://myignite.techcommunity.microsoft.com/sessions/65889 Source: https://myignite.techcommunity.microsoft.com/sessions/65889 © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Full integration with Azure ecosystem Functions is the center piece of the Serverless platform Development Platform IDE support Event Grid Functions Logic Apps Manage all events that can trigger code or logic Execute your code based on events you specify Design workflows and orchestrate processes Integrated DevOps Local development Monitoring Database Storage Analytics Intelligence Security IoT Visual debug history

Functions 2.0 – What’s New New Functions Quickstarts by Language Updated runtime built on .NET Core 2.1 .NET Functions loading changes New extensibility model Decoupled from language providers and bindings Run code from a package Tooling updates: CLI, Visual Studio & VS Code Durable Functions (GA) Consumption mode SLA  

Assembly Isolation - Bindings: 2.0 Model 2/16/2019 10:07 AM Assembly Isolation - Bindings: 2.0 Model Azure Functions Host – Functions 2.0 Host Assembly Load Context (default) Function Assembly Load Context Job host Functions Assemblies public static Run(…, CloudBlockBlob blob,…)) {    //Function code...; } Runtime dependencies Bindings WindowsAzure.Storage 9.3.1 Functions dependencies WindowsAzure.Storage 9.3.1 WindowsAzure.Storage 9.5.0 © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Dev + Hosting Introduction

Azure Functions Tooling Options 2/16/2019 10:07 AM Azure Functions Tooling Options Visual Studio VS Code CLI Portal Deployment Options © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Visual Studio  File | New Project 2/16/2019 10:07 AM Visual Studio  File | New Project © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Azure Portal  Function App 2/16/2019 10:07 AM Azure Portal  Function App © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Boost development efficiency Use triggers to define how functions are invoked Avoid hardcoding with preconfigured JSON files Build serverless APIs using HTTP triggers Connect to data with input and output bindings Bind to Azure solutions and third-party services Use HTTP bindings in tandem with HTTP triggers Triggers Bindings Define one API surface for multiple function apps Create endpoints as reverse proxies to other APIs Condition proxies to use variables Proxies Debug C# and JavaScript functions locally Use debugging tools in Azure portal, VS, and VS Code Local debugging Additional information Triggers and bindings – https://docs.microsoft.com/en-us/azure/azure-functions/functions-triggers-bindings Monitoring—https://azure.microsoft.com/en-us/services/application-insights/ Local debugging—https://docs.microsoft.com/en-us/azure/azure-functions/functions-run-local#run-functions-locally CI/CD—https://docs.microsoft.com/en-us/azure/azure-functions/functions-continuous-deployment Run locally—https://docs.microsoft.com/en-us/azure/azure-functions/functions-run-local Proxies—https://docs.microsoft.com/en-us/azure/azure-functions/functions-proxies Save time with built-in DevOps Deploy functions using App Service for CI Leverage Microsoft, partner services for CD CI/CD Integrate with Azure Application Insights Get near real-time details about function apps See metrics around failures, executions, etc. Monitoring

Sending Emails with SendGrid 2/16/2019 10:07 AM Sending Emails with SendGrid https://sendgrid.com/docs/for-developers/sending-email/v3-csharp-code-example © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Functions Hosting Models 2/16/2019 10:07 AM Functions Hosting Models Serverless Functions Serverless Linux Functions Functions Containers Kubernetes Functions Open Source Hosting IoT Functions On Prem Functions Application Delivery Execution Isolation Infrastructure Operating System Azure Managed Customer Managed © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Demo Introduction

Durable Functions Introduction

What’s still hard?

Durable Functions Write long-running orchestrations as a single function while maintaining local state. Simplify complex transactions and coordination (chaining, etc.) Easily call a Function from another Function, synchronously or asynchronously. All of the above using code-only. No JSON schemas. No graphical designer. Announcing: Generally available (v2) - C# and JavaScript

Components Starter Function Orchestrator Function Activity Function Starts orchestrations Coordinates activities Performs work OrchestrationClient OrchestrationContextTrigger ActivityTrigger

What It Looks Like Orchestrator Function Activity Functions // calls functions in sequence public static async Task<object> Run(DurableOrchestrationContext ctx) { try var x = await ctx.CallActivityAsync("F1"); var y = await ctx.CallActivityAsync("F2", x); return await ctx.CallActivityAsync("F3", y); } catch (Exception) // global error handling/compensation goes here Activity Functions

Q & A Additional Topics