Modern API development in a serverless world with Azure Functions

Slides:



Advertisements
Similar presentations
Make your app a native part of Office with Add-ins
Advertisements

From IT Pros to IT Heroes - with Azure DevTest Labs
A day in the life of an Azure serverless developer
An Overview of Web App for Containers on Linux
Azure Machine Learning Deploying and Managing Models in production
Delivering enterprise BI with Azure Analysis Services
5/29/2018 1:51 AM THR2071 Managing enterprise applications, permissions, and consent in Azure Active Directory Adam Steenwyk & Jeff Sakowicz Program Managers.
Mobile App Trends: lifecycle, functions, and cognitive
6/5/2018 1:30 PM THR1029 Spend less time managing data and more time with customers: Quick tour of Outlook Customer Manager Welly Lee
6/10/2018 3:43 AM THR1000 Making StaffHub work for your organization Business Integrations & Workflows Sushmitha Kini Engineering Manager © Microsoft.
6/10/2018 5:07 PM THR2218 Deploying Windows Defender AV and more with Intune and Configuration Manager Amitai Senior Program Manager,
DevOps for any language
THR3052 Tips and tricks: Build, deploy, and manage web apps powered by containers Ahmed Elnably Program Manager
Azure Cloud Shell Magic of Modern Command-line Management
Developing Hybrid Apps on Microsoft Azure Stack
6/17/ :27 AM BRK3341 Unlock extensibility by connecting your service to PowerApps and Microsoft Flow Theresa (Tessa) Palmer–Sr. Program Manager Sunay.
How to expand your Azure Stack marketplace
6/19/2018 2:57 AM THR3092 Monitor and investigate actions on your user and data with alerts, insights and reports Binyan Chen Program Manager II, Office.
Delivering simple and powerful serverless business applications
Azure SDKs and Tools for You
Do more with Microsoft Word and Office 365
Optimizing Microsoft OneDrive for the enterprise
Understand Hybrid Identity with Azure and Azure Stack
Virtual Machine Diagnostics in Microsoft Azure
SQL Server on Linux on All-Flash Arrays
Microsoft Ignite /31/ :08 AM
Understanding Windows Analytics Update Compliance
Excel and Power BI Better Together Democratization of data
Overview of the Microsoft Azure serverless platform
SQL Server for Java developers
Workflow Orchestration with Adobe I/O
The utility belt for managing security and compliance in Office 365
Find, try and get line-of-business apps on Microsoft AppSource
Automate all things! Microsoft Azure continuous deployment
Agile Planning with Visual Studio Team Services (VSTS)
Advancing the SharePoint Developer Community (PnP)
Eduardo Laureano Azure Functions – Serverless compute in the cloud
Plan your UC refresh correctly: Skype for Business Server 2019
Confidence at speed: Visual Studio 2017 and your CI pipeline
Continuous Delivery for Microsoft Azure
11/22/2018 1:43 PM THR3005 How to provide business insight from your data using Azure Analysis Services Peter Myers Bitwise Solutions © Microsoft Corporation.
Continuous Delivery with Visual Studio Team Services
11/23/2018 8:30 AM BRK3037 BRK3037: Dive deep on building apps and services with the Office 365 Communications Platform David Newman Senior Program Manager.
Azure Advisor: Optimization in the best way
Mobile Center and VSTS:​ Better together for your Mobile DevOps
11/27/2018 8:20 AM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
Migrate your apps from legacy APIs to Microsoft Graph
Microsoft products for non-profits
Automating security for better, continuous compliance in the cloud
Introduction to ASP.NET Core 1.0
Five cool things you can do with Windows PowerShell on Office 365
Securely pass passwords into your deployment
Overview: Dynamics 365 for Project Service Automation
Virtual Reality with Azure and Unity
Understand your Azure cloud assets dependencies with BMC Discovery
Surviving identity management in a hybrid world
Breaking Down the Value of A Yammer Post: 20 Things to Do
Cool Microsoft Edge Tips and Tricks
Getting the most out of Azure resources with Azure Advisor
Manage your App Service resources using Command line tools
“Hey Mom, I’ll Fix Your Computer”
4/21/2019 7:09 AM THR2098 Unlock New Opportunities with Nintex Hawkeye Process Intelligence and Workflow Analytics Sr. Product.
4/28/2019 3:30 AM THR1061 Learn how Dynamics 365, Office 365 and related applications work together to transform the workplace Donna Edwards Solution Architect.
Designing Bots that Fit Your Organization
Ask the Experts: Windows 10 deployment and servicing
Passwordless Service Accounts
Digital Transformation: Putting the Jigsaw Together
WCF and .NET Framework Microservices in Containers
Diagnostics and troubleshooting in Azure App Service Support Center
Optimizing your content for search and discovery
Presentation transcript:

Modern API development in a serverless world with Azure Functions BRK2234 Modern API development in a serverless world with Azure Functions Eduardo Laureano Matthew Henderson © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Eduardo Laureano Principal PM Lead @ Microsoft Azure Functions / App Service Impressed by serverless possibilities Loves programming learning process Keeps tweets at 140 chars Email: eduardo.laureano@microsoft.com Twitter: @eduardolaureano Team blog: https://aka.ms/AppServiceBlog

Matthew Henderson Senior Program Manager @ Microsoft Azure Functions / App Service Passionate about serverless applications Keeps a printed OAuth 2.0 spec on his desk Grew a beard since this photo was taken Email: matthew.henderson@microsoft.com Twitter: @mattchenderson Team blog: https://aka.ms/AppServiceBlog

Building APIs Challenges Microsoft Build 2017 7/19/2018 12:54 PM Building APIs Challenges Designing the API contract Controlling your API surface in a single place Modify requests and responses to match your backend Defining AuthN / AuthZ Implementing APIs in a serverless model © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Overview Intro to Serverless in Azure Serverless integrations 7/19/2018 12:54 PM Overview Intro to Serverless in Azure Serverless integrations API Proxies Identity Serverless API consumption © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Serverless application platform components Development Local development Monitoring IDE support Integrated DevOps Visual Debug History Platform Functions Logic apps Event Grid Developer productivity Visual designer Manage all events in one place Triggers and Bindings 100+ connectors Near real-time delivery Flexible deployment options Functions orchestration Broad coverage Analytics Database Storage IoT Security & Access Control Intelligence

by top external customer Build 2015 7/19/2018 12:54 PM >30K Active customers >100k Function apps >1 Billion Executions per day 20% Monthly customer growth 40% Monthly traffic growth >10 Billion Monthly Executions by top external customer © 2014 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Demo Logic App + Function Integration 7/19/2018 12:54 PM Demo Logic App + Function Integration Contoso Insurance: Claims auto-approver © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Scenario: SaaS Integration 7/19/2018 12:54 PM Scenario: SaaS Integration Transalta Deliver a chat bot to aid field technicians © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

? Dream Topology Bot Framework Existing Platform 7/19/2018 12:54 PM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

TransAlta: Final Topology 7/19/2018 12:54 PM TransAlta: Final Topology Logic Apps API Management Bot Framework Functions Existing Platform © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Transalta Scenario: Features 7/19/2018 12:54 PM Transalta Scenario: Features Logic Apps SaaS connectors Function Integration Functions Custom Business Logic Serverless A la carte billing Interchangeable back end Fast time to market © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Functions Proxies 7/19/2018 12:54 PM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Deployment and management isolation customers.azurewebsites.net products.azurewebsites.net orders.azurewebsites.net deployment Customers API calls Products Orders

HttpTrigger function endpoints Function app B /products Function2 /products /orders Function app A /customers Function1 Function app C /orders Function3 Key: HttpTrigger function endpoints API proxy endpoints

Demo Azure Function Proxies Static Webpage NYT Movies API /time 7/19/2018 12:54 PM Demo Azure Function Proxies Function app A Static Webpage /time Function1 / /mock NYT Movies API /movies © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

7/19/2018 12:54 PM Identity © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

App Service Authentication / Authorization Provider Web/Function App User Code App ServiceAuthN/AuthZ “Server-directed flow” Provider “Client-directed flow”

Azure AD Managed Service Identity Keep credentials out of code Auto-managed identity in Azure AD for Azure resource Use local MSI endpoint to get access tokens from Azure AD Direct authentication with services, or retrieve creds from Azure Key Vault App Service Azure Service (e.g., ARM, Key Vault) Your code 3 1 Local token service 2 Credentials Azure (inject and roll credentials)

7/19/2018 12:54 PM Easy API Export © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

OpenAPI Definition Support 7/19/2018 12:54 PM OpenAPI Definition Support Definition Quickstart Paths Verbs Security Route Parameters Integrated Development Built in visualization and testing Streamlined Export PowerApps & Flow Logic Apps Visual Studio © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Export Functions to PowerApps + Flow 7/19/2018 12:54 PM Export Functions to PowerApps + Flow Capture your function app’s OpenAPI definition Establish authentication Automatically create custom connector for PowerApps and Microsoft Flow © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Customer Success Stories

Microsoft 2016 7/19/2018 12:54 PM “We were able to move development along smoothly and cost-effectively, even when unexpected issues arose, by taking advantage of Azure capabilities” JYuki Chiba Design Leader, Advanced Solutions Group Transformed its popular IMAGE WORKS service through Azure serverless technologies. Benefits: Latency reduced by 95% Development time reduced by 75% Higher reliability Ability to add new features and releases faster and more frequently © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

7/19/2018 12:54 PM © 2014 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Roadmap Expanded Authentication Providers GA Proxies 7/19/2018 12:54 PM Roadmap Expanded Authentication Providers GA Proxies GA OpenAPI Support Additional Export Options © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Serverless growth Frameworks Triggers Connectivity Tooling .NET, Node, Python, PHP Triggers Native, 1st party, 3rd party, custom Connectivity Bindings + Connectors Tooling VS, VS Code, CLI, MacOS / Linux

Serverless Sessions at Ignite! 7/19/2018 12:54 PM Title Level Speaker Time Code Room Serverless compute explained and your options with Azure Functions, Logic Apps & more 200 Jeff Hollan Tuesday, 9/27, 9:50am THR2129 OCCC West Overview of the Microsoft Azure Serverless platform Chris Anderson Raman Sharma Tuesday, 9/26, 4:00pm BRK2237 OCCC S310 Azure Event Grid: Powering Serverless through Eventing Dan Rosanova Wednesday, 9/27, 10:45am BRK2176 A day in the life of an Azure serverless developer 300 Donna Malayeri Wednesday, 9/27, 12:30pm BRK3246 OCCC S330 Delivering simple and powerful serverless business applications Matthew Henderson Thursday, 9/28, 12:30pm BRK2180 Modern API development in a serverless world with Azure Functions Eduardo Laureano Thursday, 9/28, 3:15pm BRK2234 OCCC S210 © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

In review: session objectives and takeaways Tech Ready 15 7/19/2018 12:54 PM In review: session objectives and takeaways Benefits of Serverless API development Common Serverless API patterns How to build APIs with Azure Functions and Logic Apps Strong scenarios for Serverless APIs © 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Session resources GitHub repo: github.com/Azure/Azure-Functions 7/19/2018 12:54 PM Session resources GitHub repo: github.com/Azure/Azure-Functions Twitter: @AzureFunctions, @mattchenderson, @eduardolaureano Team blog: blogs.msdn.microsoft.com/appserviceteam YouTube channel: youtube.com/AzureFunctions Discussion Alias: Azure Functions Discussions (funcdisc) Announcements: Azure Functions Announcements © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Please evaluate this session Tech Ready 15 7/19/2018 Please evaluate this session From your Please expand notes window at bottom of slide and read. Then Delete this text box. PC or tablet: visit MyIgnite https://myignite.microsoft.com/evaluations Phone: download and use the Microsoft Ignite mobile app https://aka.ms/ignite.mobileapp Your input is important! © 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

7/19/2018 12:54 PM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.