Presentation is loading. Please wait.

Presentation is loading. Please wait.

Agile App Development with Azure API Management

Similar presentations


Presentation on theme: "Agile App Development with Azure API Management"— Presentation transcript:

1 Agile App Development with Azure API Management
Darrel Miller, Senior SDE Work on the Azure API management team This talk -> using API Management to build Agile Apps To be agile means to embrace incremental change We are going to talk about managing change in HTTP Apis But before we do…

2 APIs and API economy Mobile Cloud IoT Analytics 2-speed IT
Microservices API economy makes APIs a first class concept Not just an implementation detail that only devs care about It is a contract between providers and consumer API maybe just a supporting function Driving mobile app, or 3rd party integration Or actually a product in itself Critical part of the business service

3 Why use Azure API Management
Microsoft Build 2016 11/27/2018 1:41 PM Why use Azure API Management AZURE API MANAGEMENT Abstract decouple optimize evolve package Govern secure protect cache transform Monitor observe report analyze monetize On-board discover learn interact join So how can Azure API management help… Now you have and idea what it can do, let’s look at architecture APIs on Azure APIs outside Azure 3rd party APIs Azure APIs © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

4 Developed using any technology
Microsoft Build 2016 11/27/2018 1:41 PM AZURE API MANAGEMENT Admin portal Gateway Developer Portal APP DEVELOPERS DIRECT VPN ExpressRoute BACKEND APIs APPS Three components: dev portal, gateway, admin portal Backend hosted anywhere on any platform, As long as it is a HTTP API Hosted anywhere Developed using any technology API MANAGERS © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

5 HTTP APIs are different
Language / Runtime APIs HTTP APIs Compilers/Runtimes define breaking change Consumer code defines breaking changes HTTP APIs are different In order to clear make this distinction, Introduce new language Consumers choose when to update Provider decides if consumer can choose

6 Categorizing Change Versions Revisions Consumers choose when to adopt
Terms usually used interchangeably Alternative to the semantic versioning model, because breaking changes can’t be defined. Revisions need to meet an API Providers “Change Level Agreement” Consumers choose when to adopt Providers choose when to deploy

7 Managing API Change Advertise Change Hide Change API Contract
So, how can API Mgmt help us deal with versions and revisions Developer portal is a customizable web site that provides tools and documentation to learn about API Used to advertise new versions API Contract is the interface. It’s the WHAT is changing. Changes in contract may be versions or revisions, depends on CLA Gateway acts as a façade to the API implementation isolate the backend Where revisions hide Let’s look into these three aspects a little bit more and then we will see how the product enables it Developer Portal Gateway Façade

8 Advertise Change Developer Portal Sign Up Sign In Discover Try Build
Developer portal is about facilitating on-boarding API community has recognized this as critical to adoption Change is irrelevant if no-one is using your API Self-service sign-on support for many IdPs Monitor for reliability and performance Review reports for usage Knowing what to change is as important as how Build Monitor Report

9 API Contract API Description formats define an interface.
WSDL came first for SOAP -> protocol independent API WADL is XML based from the Java world OpenAPI (fka Swagger) JSON based, very popular MSFT using it in many products. Handle both revisions and versions

10 Hiding Implementations
3rd Party There are many ways to implement HTTP APIs Even on Azure there are different services Some fit better for different scenarios An how a feature needs to change can be a determining factor Azure Functions Logic App API Apps

11 Agile Apps demo With Azure API Management

12 API Management Versions and Revisions
Service Instance API Version Revision Operation ;rev=1 ;rev=2 /v2 ;rev=3 /speakers /sessions /days ;rev=4 api /v3 ;rev=1 ;rev=2

13 Alternate Versioning Strategies
GET Path GET Query GET api-version: v2 Header GET Content-Type: application/vnd.myformat.v2 Media Type

14 Managing Change with API Management
OpenAPI Contract Developer portal for advertising change Gateway façade for hiding changes Versions and Revisions for temporal control

15 7.7K 29K 20B 250M 27 May 2014 Customers Total APIs
Build 2015 11/27/2018 1:41 PM 7.7K Customers 21% of Fortune 100 Banking, insurance, energy, retail, transportation, manufacturing… 29K Total APIs 20B Total calls per month 250M Calls per day by the top customer 27 Regions in 14 geos May 2014 Launched on Azure © 2014 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

16

17 11/27/2018 1:41 PM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.


Download ppt "Agile App Development with Azure API Management"

Similar presentations


Ads by Google